关于java的类

来源:互联网 发布:aes算法特点 编辑:程序博客网 时间:2024/05/12 05:40

1.this关键字的使用

主要有两个作用:一是表示对隐式参数的引用、二是调用类中的其他构造方法

例如:

public people(String name){

this.name = name;

}


2.私有成员变量

当类的内部有private关键字定义的私有成员变量,要使得能够在类的外部获取或修改这么信息,可定义用get或set方法,例如:

public String getId(){

return this,id;

}

public void setName(String name){

this,name= id;

}


3.继承

继承是子类自动获取父类的数据和方法的机制,例如学生也是人,有父类people的属性,当学生是一群特定的人群,所以还具有一些特点的属

性和和外界的操作方法。这时候可以定义一个新的类student, 但是它可以重用people类中已有的成员变量和方法。可以说一个包含的关系,用

extends实现。例如:

public class Student extends People{

...

        private String sId;//定义新的成员变量


    public void sayHello(String name , String id, String sId){

super(name,id);//调用父类的同名方法;

this.sId=sId;//新的变量重新赋值;

}

}

super关键字:1,调用父类的构造方法。2,调用父类的方法。(总而言之就是用来调用父类的方法的)

object是所有类的父类,JAVA中不支持多继承,多继承的功能几乎都是通过接口机制来完成的。


4.接口

实际上JAVA实现伪多继承的方式是继承一个父类,然后implement一个接口,接口是一些方法特征的集合,但没有方法的实现。

例如:

public interface Compare{

public int compare (Object otherObj);

}

接下来,需要在类中实现接口所定义的compare 方法,使用implement关键字:

public class Student extends People implements Compare{

...

public int compare (Object otherObj){

Student other = (Student)otherObj; //类型转换

return this.sId.compareTo(other.sId); //其中compareTo是String类自带的方法

}

}

需要注意的JAVA中的接口不是类即Compare不是Student的父类,但是可以看做是Student的父类(伪多继承),这样虽然不能用

new来构造接口对象,但还是可以通过如下方式使用接口对象:

Compare com = new Student("cary",'0003','2006010101');


很久没碰过JAVA了,今天先复习一下,明天更对时间复杂度分析的理解,它算是数据结构中算法性能最重要的评判标准。



1 0