建设银行银行官网网站,做远程培训网站用什么系统,品牌传播策略,ps里怎么做网站博客制作不易#xff0c;欢迎各位点赞#x1f44d;收藏⭐关注前言在学习面向对象编程语言时#xff0c;封装、继承、多态则是我们必须学习和使用的三大特征。本文通过举例#xff0c;说明了该三大特征的基本权限特点。一、访问限定符范围private默认权限protectedpublic同一…博客制作不易欢迎各位点赞收藏⭐关注前言在学习面向对象编程语言时封装、继承、多态则是我们必须学习和使用的三大特征。本文通过举例说明了该三大特征的基本权限特点。一、访问限定符范围private默认权限protectedpublic同一包中的同一类√√√√同一包中的不同类√√√不同包中的子类√√不同包中的非子类√注访问权限用来控制方法或成员变量能否直接在类外使用。二、封装什么是封装封装将数据和操作数据的方法进行有机结合隐藏对象的属性和实现细节仅对外公开接口来和对象进行交互。 顾名思义保护或防止类中的属性或方法被破坏同时又提供一个接口使对象可以使用该对象的封装属性或方法。主要使用private关键字。2.封装的案例通过创建一个Stu类在Main类创建Stu对象访问该对象属性和方法举例说明。class Stu{private String name;public String getName() {return name;}public void setName(String name) {this.name name;}private void print(String name){System.out.println(name 在学习);}public void getPrint(String name){print(name);}
}
public class Main {public static void main(String[] args) {Stu stu new Stu();stu.setName(大佬);stu.getPrint( stu.getName() );}
}输出结果为在该代码中使用private修饰的属性和方法均属于私有成员在该类外不能直接访问和使用。于是我们通过setName/getName()/getPrint间接访问和使用这里的setName/getName()/getPrint就是对外公开的接口。二、继承什么是继承继承是面向对象程序设计使代码可以复用的最重要的手段它允许程序员在保持原有类特性 的基础上进行扩展增加新功能这样产生新的类称派生类。继承呈现了面向对象程序设计的层次结构体现了 由简单到复杂的认知过程。 例如下图关系 父类具有的属性和方法在子类当中都可以通过super关键字访问和使用。如果是创建了子类对象也可以正常访问父类的内容如果父类方法发生了重写则需要通过super.方法参数)访问和使用。继承的使用可以大大提高代码的简化使同一段代码重复使用。注意 1. 若父类显式定义无参或者默认的构造方法在子类构造方法第一行默认有隐含的super()调用即调用基类构 造方法 。 2. 如果父类构造方法是带有参数的此时需要用户为子类显式定义构造方法并在子类构造方法中选择合适的 父类构造方法调用否则编译失败。 3. 在子类构造方法中super(...)调用父类构造时必须是子类构造函数中第一条语句。 4. super(...)只能在子类构造方法中出现一次并且不能和this同时出现。2.继承的案例通过创建一个Tree类 再创建一个OsmanthusTree类继承Tree类访问该对象属性和方法举例说明。class Tree{String name;public String age;public static String ascription;//归属public String function;//作用static{ascription 中国持有;}public void springSprout(String name){System.out.println(this.name 发芽);}
}class OsmanthusTree extends Tree{private String disease;//该树患病public String getDisease() {return disease;}public void setDisease(String disease) {this.disease disease;}
}public class Inherit {public static void main(String[] args) {OsmanthusTree osmanthusTree new OsmanthusTree();osmanthusTree.name 小❀❀;osmanthusTree.setDisease(白蚁吞噬);System.out.println(osmanthusTree.name osmanthusTree.getDisease());System.out.println(osmanthusTree.name 治疗之后);osmanthusTree.springSprout( osmanthusTree.name );}
}
输出结果为在该代码中使用 extends 连接Tree类和 OsmanthusTree类。 OsmanthusTree类为子类Tree类为父类在 OsmanthusTree中可以访问Tree的所有属性和方法。也就是说在子类中可以访问父类的所有属性和方法私有权限除外。三、多态什么是多态多态同一件事情发生在不同对象身上就会产生不同的结果。 比如下图示意多态的案例通过创建一个父类Creature 再创建Person类和Cat类继承Creature类访问该对象属性和方法举例说明。class Creature{String name;int age;public Creature(String name, int age) {this.name name;this.age age;}public void eat(){System.out.println(this.name 在吃午饭);}
}class Person extends Creature{public Person(String name, int age) {super(name, age);}Overridepublic void eat() {System.out.println(this.name 在吃米饭);}
}class Cat extends Creature{public Cat(String name, int age) {super(name, age);}Overridepublic void eat() {System.out.println(this.name 在吃猫粮);}
}public class Polymorphism {public static void test(Creature creature){creature.eat();}public static void main(String[] args) {test(new Person(人类, 19));System.out.println();test(new Cat(小猫, 2));System.out.println();}
}输出结果由输出结果可知不同的子类继承父类在该类中重写了某个方法之后又使用该被重写的方法会得到不同的结果。这就是多态带来的便利同时我们也可以得知多态实现的几个必要条件必须在继承关系下必须在子类中发生父类方法的重写通过子类的引用调用重写的方法。 总结上述代码展示和图文说明就是封装、继承、多态的全部啦。这篇博客如果对你有帮助给博主一个免费的点赞以示鼓励欢迎各位点赞评论收藏⭐谢谢如果有什么疑问或不同的见解欢迎评论区留言哦。