一些Java实用技巧(量变转变为质变后会单独整理出来)
【Java包】------------------------------------
Collection 接口是 List、Set 和 Queue 接口的父接口,通常情况下不被直接使用。
【java vs C++】------------------------------------
C++没有接口,有类似于Java中抽象类的虚类。 c++是多重继承,不是单一继承。
Java单一继承:一个类只能继承一个父类,但是可以继承N个接口。
(1)因为Java不支持多继承,而有可能某个类或对象要使用分别在几个类或对象里面的方法或属性,现有的单继承机制就不能满足要求。
(2)和继承相比,接口有更高的灵活性,因为接口中没有任何实现代码。 当一个类实现了接口以后,该类要实现接口里面所有的方法和属性,并且接口里面的属性在默认状态下面都是publicstatic,所有方法默认情况下是public.
接口体现了程序设计的多态和高内聚低耦合的设计思想。
【C++虚类】------------------------------------
1.纯虚函数
在基类中仅仅给出声明,不对虚函数实现定义,而是在派生类中实现。这个虚函数称为纯虚函数。普通函数如果仅仅给出它的声明而没有实现它的函数体,这是编译不过的。纯虚函数没有函数体。
纯虚函数需要在声明之后加个=0;
2.抽象类
含有纯虚函数的类被称为抽象类。抽象类只能作为派生类的基类,不能定义对象,但可以定义指针。在派生类实现该纯虚函数后,定义抽象类对象的指针,并指向或引用子类对象。
1)在定义纯虚函数时,不能定义虚函数的实现部分;
2)在没有重新定义这种纯虚函数之前,是不能调用这种函数的。
抽象类的唯一用途是为派生类提供基类,纯虚函数的作用是作为派生类中的成员函数的基础,并实现动态多态性。继承于抽象类的派生类如果不能实现基类中所有的纯虚函数,那么这个派生类也就成了抽象类。因为它继承了基类的抽象函数,只要含有纯虚函数的类就是抽象类。纯虚函数已经在抽象类中定义了这个方法的声明,其它类中只能按照这个接口去实现。
Q&A:
基类声明了纯虚函数加了virtual,那么在派生出子类时声明也一定需要加virtual吗?
加不加都可以,因为继承了基类中纯虚函数的接口,不加的时候可以视为自己加上了virtual关键字。
【Java类调用和实例调用】
因为Test类的hello方法是静态的,所以是属于类的,当实例化该类的时候,静态会被优先加载而且只加载一次,所以不受实例化new Test();影响,只要是使用到了Test类,都会加载静态hello方法!
【Java】字符串比较".equals" && "=="
"hello".equals("world");
【java编辑器快捷键 - 格式化】
Eclispse 中有很多快捷键,在 windows 系统中格式化代码的是(Ctrl+Alt+F)
IntelliJ 中有很多快捷键,在 windows 系统中格式化代码的是(Ctrl+Alt+L)
一些Java实用技巧(量变转变为质变后会单独整理出来)相关推荐
- java实用技巧---泛型
泛型:把明确数据类型的工作,提前到了编译时期,在创建集合的时候明确存储元素的数据类型.这样的做法有点向把数据类型当作参数一样传递,所以泛型还有一个叫法:参数化类型泛型的语句定义格式:<引用数据类 ...
- java swing总结,Java 实用经验总结 Swing 篇
Java 实用经验总结 Swing 篇 Java 实用经验总结 --Swing 篇 前言 本文前言部分为我的一些感想,如果你只对本文介绍的 Java 实用技巧感兴趣,可以跳过前言直接看正文的内容. 本 ...
- python实用技巧(四)
Python实用技巧(一) python实用技巧(二) python实用技巧(三) python实用技巧(四) 排序后,最后k个元素,以逆序输出 >>> l = range(1, 6 ...
- Java 8 - 日期和时间实用技巧
Java 8 – 日期和时间实用技巧 当你开始使用Java操作日期和时间的时候,会有一些棘手.你也许会通过System.currentTimeMillis() 来返回1970年1月1日到今天的毫秒数. ...
- Java 性能调优的 11 个实用技巧
大多数开发人员理所当然地以为性能优化很复杂,需要大量的经验和知识.好吧,不能说这是完全错误的.优化应用程序以获得最佳性能不是一件容易的事情.但是,这并不意味着如果你不具备这些知识,就不能做任何事情.这 ...
- java的wwe怎么玩_WWE2K18新手实用技巧介绍 WWE2K18新手怎么玩?-游侠网
WWE2K18新手怎么玩?对于新手玩家来说,这代的游戏确实比较难,但这个难度并不是游戏内整体AI智能度的提高,而是因为设计的不平衡而导致的.接下来就为大家带来WWE2K18新手实用技巧介绍,刚刚入手的 ...
- 敲代码就是一把梭_2020必看!开发五年的大佬日常工作中所使用的java代码技巧...
前言 罗列工作中实际使用的一些代码技巧或者叫工具类;知识无大小,希望大家都有收获 实用技巧 rpc服务出参统一化 什么,出参统一化有什么好说的????? 我不知道你们有没有遇到过多少五花八门的外部服务 ...
- Vim 实用技术,第 1 部分: 实用技巧
0. Vim 简介 作为开源世界最重要的编辑器之一(另一个是 Emacs),Vim 以其强大的功能和可定制能力被众多开发者所喜爱.不过,也许就是因为 Vim 的功能太强大了,要真正用好 Vim 并不容 ...
- idea实用技巧完全教程
索引 基础教程 实用技巧 疑难杂症 星路历程 基础教程 安装 IDE 的方法 基于 Windows 系统安装 IntelliJ IDEA 的方法 基于 Mac 系统安装 PyCharm 的方法 初识 ...
最新文章
- PCL中点云的超体素(SuperVoxel)
- crowd counting_[Crowd_Counting]-PGCNet-ICCV2019
- MySQL--4操作数据表中的记录小结
- STL 里 resize 和 reserve 的区别
- 基于Java的TCP Socket通信详解(计算机端/Android手机端)
- numpy T、transpose()函数、swapaxes()函数
- lnmp环境搭建完全手册(四)——lnmp搭建(源码安装)
- Surface Book 3现身3DMark:10nm架构升级
- mongodb 存储过程 遍历表数据_三、redis数据存储之跳跃表(SKIP LIST)
- 07.用户控件弹窗提示后页面显示不正常;
- node.js与npm下载及配置流程
- springboot使用junit5/junit4
- 白领失眠危害大 如何拯救上班族?
- 格式刷只能刷一次?教你如何刷一辈子
- C++简介 C语言编程原理
- 微机原理与系统设计三:微处理器的结构与功能
- 代码覆盖率在性能优化上的一种可行应用
- 2010年Web网页设计趋势
- MT7687芯片资料MT7687原理图资料
- 数论学习四之——威尔逊定理
热门文章
- Linux内网测试80端口带宽,Linux Centos测试服务器上行下行带宽,服务器带宽测速...
- 安装oculus运行时出现问题_TOSUN丨实验室通风管道安装时应该避免的问题
- 北京交通大学计算机学院保研,北京交通大学计算机与信息技术学院(专业学位)计算机技术保研条件...
- 总有一条适合你:名人凡人经典语录200条
- 洛阳理工JAVA期末考试_洛阳理工学院2010/2011学年第一学期基础体育理论期末考试试题答案...
- HNOI2018 摸鱼记
- docker跨主机网络——overlay与macvlan
- 20200725 error Cyclic behavior during switching.
- Flutter 手势篇
- 不为人知的网络编程(十三):深入操作系统,彻底搞懂127.0.0.1本机网络通信