面向对象的三大特征是什么?

面向对象的三大特征是什么?

作为走开发道路的我们,怎么能够不知道呢,然而一直只知道字面,从来都理解不了他的意思
封装
把客观事务封装成抽象类,并且类可以把自己的数据和方法只让可信的对象或者类操作,对不可信的类进行数据进行隐藏(这一句在说访问权限【public, protected, , private】的设置)。
继承:
子对象可以继承父对象的属性和行为,亦即父对象拥有的属性和行为,其子对象也就拥有了这些属性和行。继承的关键字:extents
多态:
允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作。
示例:
创建一个Animal类

public class Animal {
    //种类名字字段
    private static String kind;
    public Animal(){
        kind="动物";
    }

    public static String getKind() {
        return kind;
    }

    public static void setKind(String kind) {
        Animal.kind = kind;
    }
    //呼吸
    public String breath(){
        return kind+"正在呼吸。。。。";
    }
    //行走
    public String go(){
        return kind+"正在行走。。。。";
    }
}

创建一个 Bird 类且继承Animal

public class Bird extends Animal {
    //种类名字字段
    private static String kind;
    public Bird(){
        Bird.setKind("小鸟");
    }

    //飞
    public String go(){
        return Bird.getKind()+"正在飞。。。。";
    }
}

创建一个 Horse 类且继承Animal

public class Horse extends Animal {
    //种类名字字段
    private static String kind;
    public Horse(){
        Horse.setKind("马");
    }

    //奔跑
    public String go(){
        return Horse.getKind()+"正在奔跑。。。。";
    }
}

测试类

public class Ex2 {
    public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);//Java输入的一种方法
        Animal  animal;
        int a=0;
        System.out.println("==================构造动物类==================");
        try {
            while (true){
                System.out.println("请输入数字 1=鸟,2=马,3=鱼,其他=结束,\n(其他 结束程序:)");
                a=scanner.nextInt();
                if (a == 1) {
                    animal=new Bird();
                }else if(a == 2){
                    animal=new Horse();
                }else if(a == 3){
                    animal=new Fish();
                }else {
                    scanner.close();
                    break;
                }
                System.out.println( animal.breath());
                System.out.println(animal.go());

            }
        }catch (Exception e ){
            System.out.println("异常处理====="+e.getMessage());
        }finally {
            System.out.println("==============================程序结束============");
        }
    }

解释:
多态的理解:
测试类中 ,先创建了一个Animal 类对象;在下面if条件中给animal赋值对象 animal=new Bird(); 则 animal就是Bird,拥有Bird的属性特征,进行Bird的方法操作。同理 animal=new Horse();也是如此。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值