Java中的this操作方法与字段

public class Parent {

	public void init() {
		System.out.println("1 init parent");
		this.demo();
	}

	public void demo() {
		System.out.println("2 demo parent");
	}

}

public class Son extends Parent {

	public void init(){
		super.init();
		System.out.println("3 init son");
		this.demo();
	}

	public void demo() {
		System.out.println("4 demo Son");
	}

	public static void main(String[] args) {
		//当前运行类 Son
		Son son = new Son();
		son.init();  //init(son)

	}

}

输出结果是:

1 init parent
4 demo son
3 init son
<pre name="code" class="java">4 demo son

操作方法时,this是指当前运行类,在这里就是指son;

第二个例子:

public class Parent {

	public String name="tom";

	public void init() {
		System.out.println(this.name);
	}

}
public class Son extends Parent {

	public String name="jack";

	public void init(){
		super.init();
		System.out.println(this.name);
	}

	public static void main(String[] args) {
		//当前运行类 Son
		Son son = new Son();
		son.init();  //init(son)
		System.out.println("## " + son.name);

		Parent p = new Son();
		System.out.println("** " + p.name);

	}

}

输出结果是:

tom
jack
## jack
** tom

操作字段时,是不能像方法一样覆盖的,this是谁的就是谁的。

时间: 2024-10-11 15:56:34

Java中的this操作方法与字段的相关文章

java中的正则操作总结

http://www.cnblogs.com/nerxious/archive/2013/01/03/2842910.html 正则表达式在处理字符串的效率上是相当高的 关于正则表达式的使用,更多的是自己的经验,有兴趣可以参阅相关书籍 这里主要写一下java中的正则操作方法 实例1:匹配 import java.util.Scanner; class Demo { public static void main(String[] args) { Scanner sc = new Scanner(

java中正则表达式(摘自 Nerxious)

正则表达式在处理字符串的效率上是相当高的 关于正则表达式的使用,更多的是自己的经验,有兴趣可以参阅相关书籍 这里主要写一下java中的正则操作方法 实例1:匹配 import java.util.Scanner; class Demo { public static void main(String[] args) { Scanner sc = new Scanner(System.in); //获取输入 System.out.print("Please Enter:"); Strin

Java中属性和字段的区别 ,很多人都分不开吗.尤其是反射技术之上的mybatis,spring配置,jstl 标签

Java中的属性,通常可以理解为其属名性时根据get和set方法名得出的. 而字段,通常叫做"对象成员". 其规则是:去掉get或set后其剩余的字符串,如果第二个字母是小写的,则把第一个字母也变成小写 getAge---->age getCPU---->CPU 属性只局限于类中方法的声明,并不与类中其他成员相关,属于javabean的范畴.例如: void setA(String s){} String getA(){} 当一个类中拥有这样一对方法时,我们可以说,这个类中

Java中的字段和属性

Java中的属性,通常可以理解为get和set方法.而字段,通常叫做“类成员”. 属性只局限于类中方法的声明,并不与类中其他成员相关.例如:void setA(String s){}String getA(){} 当一个类中拥有这样一对方法时,我们可以说,这个类中拥有一个可读写的a属性(注意是小写a).同时包含get访问器和set访问器的属性称为读写属性(read-write property).只具有get访问器的属性称为只读属性(read-only property).只具有set访问器的属

Java中对单个或多个字段进行排序

Java中对单个字段或多个字段进行排序 import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.List; /** * @date: 2015年6月19日 上午10:11:44 */ public class CollectionTest { /** * 主方法 * * @param args * 参数 * @modify by user: {修

对于Oracle中Number类型的字段映射成Java中的具体类型的问题

我在Oracle中给一个用户Id字段设置为Number类型,使用JDBC在完成ORM的时候,以为其可以自动转换为Integer,因为我的POJO类id舒心实用的就是Integer.但事实是,我在测试的时候,发现所有的用户id全为null,还在奇怪明明数据库中id是有值的,为什么取不到? 原因在于Oracle的Number类型映射为Java类型中的 java.math.BigDecimal (不可变的.任意精度的有符号十进制数)类型,并不是我简单认为的 Integer ,还会报一个错误: 就是说B

java 子类、父类中静态代码块、字段,非静态代码块、字段以及构造函数的初始化顺序和次数

一个类中的数据初始化顺序是面试官非常喜欢出的面试题之一,本文用一个实例来介绍java中子类.父类中静态代码块.字段,非静态代码块.字段以及构造函数的执行顺序和次数. 一.包结构 Cat继承Animal Runner里包含main函数,程序入口 Sing类主要用来打印执行顺序的序列号 二.代码 public class Animal { Sing s1=new Sing(1,"animal\tnot static field"); static Sing s2=new Sing(2,&q

Java中的属性和字段有什么区别

1.Java中的属性和字段有什么区别? 答: Java中的属性,通常可以理解为get和set方法. 字段,通常叫做“类成员”. 属性只局限于类中方法的声明,并不与类中其他成员相关.例如: void setA(String s){} String getA(){} 当一个类中拥有这样一对方法时,我们可以说,这个类中拥有一个可读写的 a 属性(注意是小写a).如果去掉了set的方法,则是可读属性,反之亦然. 类成员(字段),通常是在类中定义的类成员变量,例如: public class A{ pri

java中使用反射获取pojo(实体)类的全部字段值

说起反射.不得不说它实在是太强大了,通过反射就能够轻轻松松拿到各种东东,假设你想在项目中解除对某个类的依赖,能够考虑用反射. 今天跟大家分享的是通过java中的反射,获取pojo类的全部字段值. 为什么要做这个操作的呢?主要是为了重写实体类的toString方法.有人会说.直接重写toString方法.返回字段.toString()的字符串不就可以了. 这么做的确能够.可是假设你的pojo类有上百个,上千个,你还要一个一个改吗?所以我们须要从新的方向去解决. 由于我们全部的pojo类.都继承一个