JAVA类与对象

    xiaoxiao2023-11-16  157

    类、对象、继承

    类关键字:class 类的创建:public class 类名{}

    public class player1{} public class player2{}

    类的属性:public 属性类型 属性名;

    public int ATK1; public int blood; public String name;

    类的方法:public 返回值类型 方法名(参数类型 参数名){方法体}

    //主方法,相当于C中的main函数 public static void main(String[]args){}

    关于主方法的详解

    public void beat(player2 b) { b.blood=b.blood-ATK1 }

    对象

    对象关键字:new 对象的创建:类名 对象名 = new 类名();

    player1 duizhang = new player1(); player2 gangtie = new player2();

    对象的属性:对象名.属性名

    duizhang.name="美国队长"; duizhang.blood=100; duizhang.ATK1=11

    对象的方法:对象名.方法名(参数值);

    duizhang.beat(gangtie) gangtie.beat(duizhang)

    按照上面的思路,要在两个类中创建两个对象,但是钢铁侠和美国队长都是role,他们具有相似的属性,所以可以把他们归于同一个父类中,他们都继承了父类role的某些属性。

    继承

    继承关键字:extends 继承格式:public class 子类名 extends 父类名{}

    public class Gangtie extends role{} public class Duizhang extends role{}

    在父类中定义父类属性

    public class role{ public String name; public int ATK; public int blood; }

    子类在创建子类对象后直接为属性赋值

    Gangtie gangtie=new Gangtie(); Duizhang duizhang=new Duizahng(); Mieba mieba=new Mieba(); gangtie.name="钢铁侠"; gangtie,ATK=10; gangtie.blood=100; duizhang.name="美国队长"; duizhang.ATK=8; duizhang.blood=200; mieba.name="灭霸"; mieba.blood=110; mieba.ATK=3;

    子类可以直接调用父类的方法

    gangtie.attack(duizhang);

    子类也可以重写父类的方法

    //父类方法 public class role { public void attack(role b){ b.blood=b.blood-ATK; System.out.println(b.name+"的血量是"+b.blood); } } //子类重写 public class Mieba extends role{ public void attack(role b){ b.blood=b.blood-ATK*2; System.out.println(b.name+"血量剩余:"+b.blood); } } //重写后“灭霸”再使用attack方法,其伤害就是2倍ATK //调用时仍然使用attack mieba.attack(gangtie);
    继承的权限问题

    访问权限的详细介绍

    Java四种访问权限:public protected default(缺省) private:

    权限本类同一包的类不同包子类其他public√√√√protected√√√×default(缺省)√√××private√×××

    总结创建类和对象的流程

    public class 类名{ //定义类的属性 public String …; public int …; //创建主方法 public static void main(String[] args){ //创建对象 类名 对象名 = new 类名(); //初始化对象 对象名.属性=‘ ’; 对象名.属性=…; //调用方法 对象名.方法名(被使用对象); } } //方法的创建: public class 类名{ //定义类的属性 public String …; public int …; public void 方法名(类名 随意创建的一个对象名(a)){ //方法具体内容 a.属性=…; } }
    最新回复(0)