javaSE-面向对象-this关键字
2014-02-23 18:11
274 查看
this关键字
特点:this代表其所在函数所属对象的引用。换言之:this代本类对象的引用。
什么时候使用this关键字呢?
当在函数内需要用到调用该函数的对象时,就用this。
例程。
this用法一
class Person { private String name; private int age; Person() { } /* * this:代表的是对象。其实就一个对象的引用。 它代表哪个对象呢? 哪个对象调用了this所在的函数,this就代表哪个对象。 * * this的使用之一:当成员变量和局部变量同名时,可以用this来区分。 */ Person(String name, int age) { this.name = name; this.age = age; } void speak() { System.out.println("name=" + this.name + ",age=" + this.age); } void show() { this.speak(); } } class ThisDemo { public static void main(String[] args) { Person p = new Person("小明", 24); Person p1 = new Person("旺财", 28); p.speak(); p1.speak(); p.show(); } }
this第二个用法
class Person { private String name; private int age; Person() { } /* this:代表的是对象。其实就一个对象的引用。 它代表哪个对象呢? 哪个对象调用了this所在的函数,this就代表哪个对象。 this的使用之一:当成员变量和局部变量同名时,可以用this来区分。 this的使用之二:使用this(参数列表)的方式就可以实现构造函数之间的调用。 注意:构造函数之间调用时,this语句只能定义在构造函数的第一行。 */ Person(String name) { this.name = name; } Person(String name,int age) { this(name);//必须是第一行。为什么呢?因为初始化动作必须先执行。 // this.name = name; this.age = age; } void show() { this.speak(); } void speak() {} } class ThisDemo2 { public static void main(String[] args) { Person p = new Person("小明",24); Person p1 = new Person("旺财",28); } }
用法三
class Person { private int age; Person(int age) { this.age = age; } /* 定义一个功能。用于比较。两个人是否是同龄人。 明确1:结果:boolean 明确2:参数: 一个,Person 当功能内部使用到了本类对象时,用this表示。 */ public boolean compare(Person p) { /* if(this.age==p.age)// return true; else return false; */ return this.age == p.age; } } class ThisDemo3 { public static void main(String[] args) { System.out.println("Hello World!"); Person p1 = new Person(23); Person p2 = new Person(35); p1.compare(p2); } }
相关文章推荐
- Java——面向对象 this关键字
- JavaSE(2):java面向对象(上)
- [javase学习笔记]-7.6 this关键字之原理
- Android之JAVASe基础篇-面向对象(二)
- Android之JAVASe基础篇-面向对象-类集(十)
- JavaSE 10 面向对象的高级特性
- JavaSE面向对象后的主要知识点总结
- JavaSE笔记04:面向对象的理解
- JavaSE实战——面向对象(练习)
- 【JavaSE学习笔记】面向对象_01(入门,匿名对象,成员变量,局部变量,封装,this,构造方法)
- javaSE-面向对象-封装特性
- javaSE-面向对象-匿名内部类
- javase面向对象三大特性之继承
- 【面向对象】访问this关键字和base关键字使用
- 黑马程序员-day05-面向对象(this关键字和super关键字)
- 黑马程序员——学习日志4面向对象(概念,类与对象,封装,构造函数,this关键字)
- 理解面向对象与封装、构造函数、this关键字
- [置顶] javaSE-(面向对象)
- java学习路线__面向对象__this关键字__5