JAVA this 关键字

来源:互联网 发布:4g网络不稳定怎么设置 编辑:程序博客网 时间:2024/05/14 20:44

调用类中的属性

调用类中的方法

调用类中的构造

表示当前对象



package org.thisdemo;class Persona{private String name;private int age;public Persona (){}public Persona(String name){this();this.name = name;}public Persona(String name,int age){this(name);this.age = age;}public void print(){System.out.println(this.name+','+this.age);}}public class thisdemo01 {public static void main(String args[]){Persona p = new Persona("张三",20);p.print();}}


在使用this 调用构造方法的时候至少有一个构造方法是使用this()调用的,而此构造方法将做为调用的出口,一般这个出口都会使用无参构造完成


this 与 super 的区别


NO
比较点
this
super
1
属性
this属性表示的是本类中的属性,如果在子类中找不到属性则会从父类中继续查找
super属性,表示直接找到父类中的属性
2
方法
this.方法()表示调用本类中的方法,如果找不到则从父类中查找
表示从子类直接找到父类中被子类覆写的方法
3
构造
可以调用本类中的其他构造方法,但是要求至少一个构选方法是没有this()
从子类中调用父类的构造方法,子类不管如何编写代码,则肯定要先调用父类的构造
4

调用构造时this要放在构造方法首行
调用构造时,要放在子类构造方法首行
5
特殊点
this 表示当前对象
无此概念


package org.thisdemo;class UserCheck{private String username;private String password;public UserCheck(String username,String password){this.username = username;this.password = password;}public boolean Check(){if ( (this.username.equals("abc")) && (this.password.equals("123"))){return true;}return false;}}class Operate{private String args[];public Operate(String args[]){this.args = args;if (args.length!=2){System.out.println("输入参数不正确");System.exit(1);}}public String getInfo(){if (new UserCheck(this.args[0],this.args[1]).Check()){return "登陆成功";}else{return "登陆失败";}}}public class thisdemo01 {public static void main(String args[]){Operate opt = new Operate(args);System.out.println(opt.getInfo());}}


原创粉丝点击