当前位置: 代码迷 >> Java相关 >> [求助]请大家给我上一课
  详细解决方案

[求助]请大家给我上一课

热度:225   发布时间:2006-07-27 21:50:01.0
[求助]请大家给我上一课
java里面有两个关键字.this和super我在看CORE JAVA(第六版)的时候在代码总是能看见,对我这个新手OR菜鸟来说,理解哟点困难.
望哪位大侠,帮忙指点一下...
小弟在这里谢谢了!!!!!!
----------------解决方案--------------------------------------------------------
去查原来的帖子吧 我记得有一个
----------------解决方案--------------------------------------------------------
this指的是这个类,即程序运行的当前类。
super是当前类的父类

----------------解决方案--------------------------------------------------------
类似于中文中的代词,分别指我和他(他特指父类)。
----------------解决方案--------------------------------------------------------

用的时候,老是看不习惯啊CORE JAVA的代码
import java.util.*;
public class ConstructorTest
{
public static void main(String[] args)
{Employee[] staff = new Employee[3];

staff[0]= new Employee("Harry",40000);
staff[1]= new Employee(60000);
staff[2]= new Employee();


for (int i=0; i< staff.length; i++)
{
Employee e= staff[i];
System.out.println("name"+e.getName()+",id"+e.getId()+",salary"+e.getSalary());}}}


class Employee{
public Employee(String n,double s)
{
name=n;
salary=s;
}

public Employee(double s)
{
this("Employee #"+nextId,s);/*如果是多个类,在一个包里这样用行吗??*/
}

public Employee(){
}

public String getName(){return name;}

public double getSalary()
{return salary;}

public int getId(){
return id;
}
{id=nextId;
nextId++;}
static{
Random generator = new Random();
nextId= generator.nextInt(10000);
private String name="";
private double salary;
private static int nextId;}


----------------解决方案--------------------------------------------------------
或者说他掉用哪个类里的方法,一个包里有多个类的时候,是不是不用这个为好啊?
----------------解决方案--------------------------------------------------------
回5楼
这么用是调用了
public Employee(String n,double s)
{
name=n;
salary=s;
}
这个构造方法,在一个类中,当然可以了,this就是指这个类

----------------解决方案--------------------------------------------------------

多谢指教    我刚下班刚刚看到帖子......


----------------解决方案--------------------------------------------------------
  相关解决方案