导航:首页 > 编程语言 > 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相关的资料

热点内容
阿里国际站app端怎么装修 浏览:528
微信小程序云开发简单搭建源码 浏览:851
以后缺程序员吗 浏览:293
jsp源码不能运行 浏览:363
淘客助手源码下载 浏览:733
如何使用app记账报税 浏览:562
python线程捕捉键盘 浏览:25
地推统计图app怎么做 浏览:162
android文件夹不能用了 浏览:857
加密软件的日志 浏览:892
肾病pdf 浏览:230
网站怎么用本地服务器 浏览:120
javadoc导入android 浏览:517
文件扫描成pdf 浏览:696
凉山火灾救援命令 浏览:54
压缩机三相检测 浏览:861
linux怎么安装光盘 浏览:799
宽带服务器无响应是为什么 浏览:226
压缩包内看图 浏览:914
安卓手机如何发现app后台调用情况 浏览:561