课上, 老师出了一个题:
考察:1、类的定义 2、类的属性 3、类的方法、重载、构造方法、代码块
题目是这样的:
设计 一个 类:Tree
要求:
1、包含main方法
2、属性:静态: String name ; double height; double growgrate
3、构造方法: a.从“种子开始长”。b。直接”移植“
4、其他方法 void grow(time)
{ height = , Sysem.out,PRintln(......);}
我是这样做的:
package classworks;
public class Tree {
static String name;
static double height ;
static double growgrate =1.1;
double time;
static
{
height = 0;
name = "种子";
System.out.println( "名字:" + name + ", 高度 " +height + " " ) ;
}
void grow(double time)
{
name = "松树";
height = time * 1.1 + growgrate;
System.out.println( "名字:" + name + ", 高度 " +height + " " ) ;
}
}
class Info{
double height;
String name;
public Info(double height){
name = "小树";
this.height = height;
}
public Info(String name,double height )
{
this.name = name;
this.height = height;
}
public void showInfo(){
System.out.println(" 名字: "+name+" ,高度: "+height+" ");
}
}
class main{
public static void main(String[] args){
Tree p = new Tree();
p.grow(12);
Info q1 = new Info(12);
q1.showInfo();
Info q2 = new Info("大树",22);
q2.showInfo();
}
}
之后又修改了下:
packageclassworks;importstaticclassworks.Info.height;importstaticclassworks.Tree.height;publicclassTree {staticString name;staticdoubleheight ;staticdoublegrowgrate =1.1;doubletime;//其它方法voidgrow(doubletime)
{
name= "松树";
height= time * 1.1 +growgrate;
System.out.println("名字:" + name + ", 高度 " +height + " ") ;
}
}//构造方法classseed{staticdoubleheight;staticString name;publicseed(){
height= 0;
name= "种子";
System.out.println("名字:" + name + ", 高度 " +height + " ") ;
}
}classInfo{staticdoubleheight;staticString name;publicInfo(doubleheight){
name= "小树";this.height =height;
}publicInfo(String name,doubleheight )
{this.name =name;this.height =height;
}publicvoidshowInfo(){
System.out.println(" 名字: "+name+" ,高度: "+height+" ");
}
}classmain{publicstaticvoidmain(String[] args){
Tree p=newTree();
p.grow(12);newseed();
Info q1=newInfo(12);
q1.showInfo();
Info q2=newInfo("大树",22);
q2.showInfo();
}
}
总结:
构造方法构造方法是一种特殊的方法,它是一个与类同名且没有返回值类型的方法。对象的创建就是通过构造方法来完成,其功能主要是完成对象的初始化。当类实例化一个对象时会自动调用构造方法。构造方法和其他方法一样也可以重载。
构造方法 - 为何使用构造方法
是一种特殊的方法,它的作用是用来初始化对象的数据,实现类的实例化。 在编写类的成员数据时,就需要编写初始化这些数据的构造方法。
构造方法 - 关键字this
妙用this关键字 什么是this this代表当前对象,其本质是实例方法中对该方法所在实例的引用
this的用处当引用对象的某个成员时,可以用“this.成员名”来表示 还可以用“this.方法名”来引用当前对象的某个方法 this的另一个用途是:在一个构造方法中调用当前对象的其它构造方法; 注意:这样的语句必须作为构造方法的第一条语句
注意事项this只能用在方法中; this不能用在静态方法中 Simple use of the "this" 调用一个方法,使得它的返回值为一个句柄!