四大宗旨
抽象 封装 继承 多态
---------------------------------------------------------
抽象
把具体的事物抽象成一个类,在类中,有属性和方法
比如 ,一个人 (类)
属性
身高
体重
性别
属性都是私有,谁也不愿意把这些信息无缘无故告诉给其他人
方法
会唱歌
会跳舞
会吃饭
这些方法为公有,可以向外人展示
而每一个人的个体,都是对象,就好比人要高对象。如
对象的实例化:耿鑫是人,豆豆是狗。
在成熟的面向对象的语言中,属性和方法的作用范围有四种
private ,私有 只有自己能访问
defluat 默认(在C++中叫friend, 友元)?
protect, 保护 ?
public ,公有 谁都可以访问
---------------------------------------------------------
封装
每一个实际的产品都是一个对象(如:一包 康师傅饼干),人们关系的只是如可去使用产品(吃饼干,为了解饱)
而一般不去关心饼干是如何生产的(方法内部的结构)。
在java C++ C#中,一个文件封装一个类,需要的时候需要导入
java:import ;C++: include C#:using
还有,一个最直观的例子,在java C# C++中的属性,为了安全,都封装成getter 和setter方法
---------------------------------------------------------
继承
好比是儿子和老子的关系
儿子继承老子的本领,并且自己又多出的新的本领,可谓是青出于蓝而胜于蓝
在java中,是单继承(C++中是多继承)即一个儿子,只能有一个老子
---------------------------------------------------------
多态
在java中,其中之一就是接口
接口好比是标准,有类去实现这个标准
接口中只有方法,(例如38~40%的甲醛溶液 叫溶液叫做福尔马林)没有如何实现方法
比如说,牛奶 什么是牛奶?含有丰富的蛋白质,脂肪等等
有一家工厂,如三鹿 ,去实现牛奶这一标准,
并根据自己企业的需求,去加一些“三聚氰胺”
不过,类可以去实现多个接口
如,一个人掌握很多的技能,汲取了各个技能的精华(每一个技能都有自己的标准(接口))
java中的向上转型和向下转型
向上转型:自动 安全,比如,我想要一个人(父类),我给你一个叫**的男人(子类的对象)
向下转型:强制 不安全,比如,我需要一个瘦子,我给你一个人
(此人不知道是胖是瘦,必须强制转换成“瘦子”,可能需要减肥,减肥可能会失败(如:个人意志薄弱))。
C++ 与java中抽象类的理解
抽象 封装 继承 多态
---------------------------------------------------------
抽象
把具体的事物抽象成一个类,在类中,有属性和方法
比如 ,一个人 (类)
属性
身高
体重
性别
属性都是私有,谁也不愿意把这些信息无缘无故告诉给其他人
方法
会唱歌
会跳舞
会吃饭
这些方法为公有,可以向外人展示
而每一个人的个体,都是对象,就好比人要高对象。如
对象的实例化:耿鑫是人,豆豆是狗。
在成熟的面向对象的语言中,属性和方法的作用范围有四种
private ,私有 只有自己能访问
defluat 默认(在C++中叫friend, 友元)?
protect, 保护 ?
public ,公有 谁都可以访问
---------------------------------------------------------
封装
每一个实际的产品都是一个对象(如:一包 康师傅饼干),人们关系的只是如可去使用产品(吃饼干,为了解饱)
而一般不去关心饼干是如何生产的(方法内部的结构)。
在java C++ C#中,一个文件封装一个类,需要的时候需要导入
java:import ;C++: include C#:using
还有,一个最直观的例子,在java C# C++中的属性,为了安全,都封装成getter 和setter方法
---------------------------------------------------------
继承
好比是儿子和老子的关系
儿子继承老子的本领,并且自己又多出的新的本领,可谓是青出于蓝而胜于蓝
在java中,是单继承(C++中是多继承)即一个儿子,只能有一个老子
---------------------------------------------------------
多态
在java中,其中之一就是接口
接口好比是标准,有类去实现这个标准
接口中只有方法,(例如38~40%的甲醛溶液 叫溶液叫做福尔马林)没有如何实现方法
比如说,牛奶 什么是牛奶?含有丰富的蛋白质,脂肪等等
有一家工厂,如三鹿 ,去实现牛奶这一标准,
并根据自己企业的需求,去加一些“三聚氰胺”
不过,类可以去实现多个接口
如,一个人掌握很多的技能,汲取了各个技能的精华(每一个技能都有自己的标准(接口))
java中的向上转型和向下转型
向上转型:自动 安全,比如,我想要一个人(父类),我给你一个叫**的男人(子类的对象)
向下转型:强制 不安全,比如,我需要一个瘦子,我给你一个人
(此人不知道是胖是瘦,必须强制转换成“瘦子”,可能需要减肥,减肥可能会失败(如:个人意志薄弱))。
C++ 与java中抽象类的理解