导航:首页 > 编程语言 > java不写this

java不写this

发布时间:2024-10-07 16:46:05

① this和super不能用在main方法中

请问你是想问“this和super不能用在main方法中是怎么回事”吗?该问题的原因如下:
java中,this和super关键字有特定的用途和规则。this用于引用当前对象的实例,通常在任何方法内部都可以使用。但在main方法中,由于它是程序的入口点,代表整个程序而不是某个对象的实例,因此不能使用this来引用当前对象。
同样,super用于引用当前对象的父类实例,但在main方法中也不能使用,因为main方法通常是静态的,不与任何特定对象实例关联。

② java中this的用法

1. this指当前对象。
当在一个类中要明确指出使用对象变量或函数时加上this引用。如下面例子中:

public class Hello {

String s = "Hello";

public Hello(String s){
System.out.println("s = " + s);
System.out.println("1 -> this.s = " + this.s);
this.s = s;
System.out.println("2 -> this.s = " + this.s);
}

public static void main(String[] args) {
Hello x=new Hello("HelloWorld!");
}
}

运行结果:

s = HelloWorld!
1 -> this.s = Hello
2 -> this.s = HelloWorld!

在这个例子中,构造函数Hello中,参数s与类Hello的变量s同名,这时直接对s进行操作则是对参数s进行操作。对类Hello的成员变量s进行操作就应该用this进行引用。运行结果的第一行就是直接对构造函数中传递过来的参数s进行打印结果;
第二行是对成员变量s的打印;第三行是先对成员变量s赋传过来的参数s值后再打印,所以结果是HelloWorld!

2. this作为参数传递
当你要把自己作为参数传递给别的对象时如:

public class A {
public A() {
new B(this).print();
}

public void print() {
System.out.println("Hello from A!");
}
}

public class B {
A a;
public B(A a) {
this.a = a;
}

public void print() {
a.print();
System.out.println("Hello from B!");
}
}

运行结果:
Hello from A!
Hello from B!

在这个例子中,对象A的构造函数中,new
B(this)把对象A作为参数传递给了对象B的构造函数。

③ 在Java中的main方法中可以使用this关键字吗为什么

不可以使用this关健词..
this 关健词是相对于 class来说的而main函数是独立于class的一个运行的函数..
对象使用 this 的话主要是容易把变量分开来..以免混乱如
public class A{
int i;
public void setI(int i){
this.i = i;
}
}

阅读全文

与java不写this相关的资料

热点内容
考研群体怎么解压 浏览:153
linux修改命令提示符 浏览:222
圆圈里面k图标是什么app 浏览:57
pdf加空白页 浏览:943
linux服务器如何看网卡状态 浏览:314
解压新奇特视频 浏览:702
图书信息管理系统java 浏览:549
各种直线命令详解 浏览:859
程序员泪奔 浏览:143
素材怎么上传到服务器 浏览:513
android百度离线地图开发 浏览:187
web可视化编程软件 浏览:288
java笔试编程题 浏览:742
win11什么时候可以装安卓 浏览:560
java不写this 浏览:1000
云点播电影网php源码 浏览:97
pythonclass使用方法 浏览:226
移动加密软件去哪下载 浏览:294
php弹出alert 浏览:209
吉林文档课件加密费用 浏览:136