1.1 类的定义:
类:class。
对象:object。
//定义如下:
public class 类名
{
修饰符 类型 成员名称;//可以有多个
修饰符 类型 方法名;//可以有多个
}
public class Hello
{
public String name;
public int age;
public void say(String ss)
{
System.out.println(ss);
}
}
修饰符:public, protected,private,static,final,abstract
public, protected,private三个中只能出现一个。
final,abstract; 两个只能出现一个。
static 可以跟上面一起组合。
public:表示公共的,对所有的类都可见。
protected:对本包中的类可见。
private: 只对本类可见。
final:代表最终的,不可改变的。
abstract:代表抽象的,需要重写使用。
static :代表静态的,外部可以直接使用,不需要创建。
1.2 类的创建
public class Hello
{
public String name;
public int age;
public void say(String ss)
{
System.out.println(ss);
}
}
类名 名称=new 类名();
Hello a=new Hello();
a.name;//访问a的name成员变量。
a.say(“你好!”)//访问a的say方法。
this的使用;
当成员变量跟局部变量名称相同时,可以使用this来区分并同时使用它们。
public class ss{
int a;
public void ss(int a){
this.a=a;//将局部变量的a赋值给成员变量的a
}
}
2 方法重载:
Java允许一个类有多个同名的方法,但是形参列表不能相同,当使用对于形参的实参进入时相当于调用此方法。
public class ss{
public void t(){
System.out.println(“无参”);
}
public void t(String s){
System.out.println(s);
}
public static void main(String[] args){
ss a=new ss();
a.t();//调用无参方法
a.t(“有参”);//调用有参方法。
}
}
3 类的继承:类只能继承一个父类,多个类可以继承一个父类,子类可以调用父类的方法和对象。
子类写入和父类名字一样的方法称为重写。
子类中调用父类的函数或变量用 super来调用,但是不能调用父类用private修改的变量或函数。
public class Fu {
public void ss(){
System.out.println("父亲");
}
public void s(){
System.out.println("父类有而子类没有");
}
}
public class Haizi extends Fu {
public void ss(){
System.out.println("孩子");
}
public void sw(){
System.out.println("子类有而父类没有");
}
}
public class Main {
public static void main(String[] args) {
Fu f=new Haiz(); //父类引用指向子类对象
f.ss(); //父类中有这个方法,子类中对父类的这个方法重写,此时调用的是子类的方法
f.sw(); //父类中有这个方法,子类中没有,此时调用的是父类的方法
//sc.printf(); //父类中没有这个方法,这个方法是在子类中定义的,此时用不了此方法
//Child c = new Father(); //不能使用子类引用指向父类对象,这是错误的!!!
}
}
4 Java多态:
继承的形式可以使用多态。
现实中像狗是一个对象,动物也是一个对象,但狗也是动物,它们是继承关系
多态的运用:
父类名称 名称=new 子类名称();
public class Dongwu{
public void jump() {
System.out.println(“动物跳了”);
}
}
public class Dog extends Dongwu{
public void jump()
{
System.out.println(“狗跳了”);
}
}
Dongwu s=new Dog();
s..jump(); //实际输出:狗跳了
调用小技巧方法看左边,使用看右边;
父类拥有的方法才能使用,使用时子类覆盖了方法所有实际使用孩子的方法。