C++ & java小结
JAVA类:
每个类都属于一个包,private成员:只有该类可以访问,子类不能访问
Public:其他类可以访问
Protected: 只有本包内的类可以访问
如果在声明class时不加public,则该类只能在该包内使用
Book book = new Book(); //创建对象
销毁: book = null;
将父类对象应用于子类的特征就是多态
父类通常被定义为抽象类,在多态机制中,比抽象更方便的方式是将抽象类定义为接口,由抽象方法组成的集合就是接口
Java中使用extends关键字来标识两个类的继承关系
当实例化子类对象时,父类对象也相应的被实例化
在java中所有的类都直接或间接继承了java.lang.Object类,它是所有类的父类,是java类层中的最高层类当创建一个类时,除非每个类已经指定要从其他类继承,否则它就是从java.lang.Object类继承而来
接口中定义的方法必须被定义为public或abstract形式
在接口中定义的任何字段都是static和final的
Java语言的异常捕获结构由try、catch、finally 3部分组成
接口是公开的,里面不能有私有的方法或变量,是用于让别人使用的,而抽象类是可以有私有方法或私有变量的。
实现接口的一定要实现接口里定义的所有方法,而实现抽象类可以有选择地重写需要用到的方法,一般的应用里,最顶级的是接口,然后是抽象类实现接口,最后才到具体类实现。接口可以实现多重继承,而一个类只能继承一个超类(父类),但可以通过继承多个接口实现多重继承。
Public Class a extends b implements V1,V2。。。(多个接口)
图形界面编程:Swing包
C++:
//类的三种继承方式:都只继承基类的public和protected部分
//public继承:继承的public和protected仍然为public和protected不变
//protected:public和protected都-->protected
//private: public和protected都-->private
//protected private 类都是不能直接访问的, 只有公有成员函数能够访问它们改变它们
//protected 与 private的区别就在于protected成员是可以被继承的,而private继承不了
虚函数的作用:主要用在基类的指针指向派生类,然后派生类中的同名函数会覆盖基类中的虚函数,基类中的虚函数也可以不定义,也就是纯虚函数:virtual void func() = 0;即可
C++中的类可以多重继承,而java中类不能多重继承,要想多重继承只能多重继承接口
函数后面接const, 一旦企图修改成员数据,则编译器会报错。
如果派生类中有与从基类继承而来的同名的函数,那么会覆盖基类中继承的函数。但如果基类的函数后面加了final,就是禁止被覆盖,这样派生类中有同名的函数并且还要继承来自基类的同名函数,程序会报错。
如果派生类中有与从基类继承而来的相同的成员变量也会覆盖(重写)
对于类的静态成员变量:C++和java都不用实例化对象就能使用静态成员
C++ & java小结的更多相关文章
- 【JAVA小结】字符串比较是否相等
public class CompareObject1 { public static void main(String[] args) { String str1 = new String(&quo ...
- 【JAVA 小结】Java关于类与对象的代码
分别建立2个类class works 和 Person import java.io.*; public class works { public static void main(String[] ...
- java 小结2 多态问题和容器介绍
面向对象这个东西,其实我们一直是不是都没有感觉到自己在用,以后我一定要用用.以前学c#时候认真的看过一次,最近一直研究java.随便再看看. 多态问题: 在java中多态分为(1)编译时多态和(2)运 ...
- java 小结3 hashcode和equals I/o问题
我需要把星期天看的一些东西记录下来,要不然会忘记. hashCode.equals: 1)每个java对象都有hashCode和equals方法. java的终极类是object类,那么object类 ...
- 初步自学Java小结
本周学习Java使我印象最深刻的Java开发环境的安装与设置,通过下载Eclipse IDE for Java Developers初步搭建好了Java开发环境,之后利用视频了解了Java程序的类型及 ...
- java小结
1.UUID.randomUUID()是潜在线程安全的,SecureRandom.nextBytes()为synchronized
- 【JAVA小结】类的属性组的使用
public class UsingAttribute { static String strA = "string-a"; static String strB; static ...
- java 小结1(static ,final,泛型)
static,final. (1)final: final:属于“终态”,意思就是不可以改变.可以修饰非抽象类,非抽象类的方法等.反正就是不能够再改变赋值了. 注意:1)fina类不能被继承,所以它没 ...
- 【LeetCode】Path Sum ---------LeetCode java 小结
Path Sum Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that addi ...
随机推荐
- Hyper-V迁移---委派
在Hyper-V管理器中-实时迁移,选择“使用kerberos",如图1所示 在AD中,找到Hyper-V宿主,分别设置委派,如图2所示 图1 图2
- 你不能不知道到的Hook!
Hook是什么? hook翻译之后是钩子的意思,hook的用途主要是用来拦截消息的,看到这里大家可能会迷茫,What is a hook?所以这时就不得不普及一下操作系统的原理. 举个例子:假 ...
- css3实现渐变
chrome,苹果浏览器:—webkit- firebox浏览器:-moz- Opera浏览器:-o- 渐变分为:线性渐变(Linear Gradients)向下/向上/向左/向右/对角方向 径向渐变 ...
- Promise里捕捉错误的最佳实践
Promise里的同步部分不需要try catch new Promise((resolve, reject) => { throw new Error('error'); setTimeout ...
- sql时间格式转换
sql server2000中使用convert来取得datetime数据类型样式(全) 日期数据格式的处理,两个示例: CONVERT(varchar(16), 时间一, 20) 结果:2007-0 ...
- Coursera机器学习基石 第2讲:感知器
第一讲中我们学习了一个机器学习系统的完整框架,包含以下3部分:训练集.假设集.学习算法 一个机器学习系统的工作原理是:学习算法根据训练集,从假设集合H中选择一个最好的假设g,使得g与目标函数f尽可能低 ...
- 51Nod - 1205 (流水先调度)超级经典的贪心 模板题
题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1205 N个作业{1,2,…,n}要在由2台机器M1和M2组成 ...
- NSString,NSData,NSFileManager常用方法
一.利用NSString类进行文件路径的处理 文件路径格式: NSString *path=@"/Uesrs/apple/testfile.txt" 常用方法汇总: 1.获得组成此 ...
- ubuntu software center和新立得
打开软件库,可以搜索或在终端输入software-center如果没有,可能没有安装软件库,可以在终端安装:sudo apt-get install software-center[注意全部小写]使用 ...
- 《Linux 学习》01---redis安装, 并使用Redis Desktop Manager 连接
一.环境简介: linux 系统:centos 7.X 二.安装大纲: 1.下载安装包 2.安装 3.统一管理redis 配置文件 4.编辑redis配置文件,设置常用的功能 5.(1)命令启动,连接 ...