![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java基础知识
文章平均质量分 63
Java经验分享网
http://www.javagogo.cn
展开
-
浅谈多态-JavaGogo
简介面向对象有四个基本特性:封装、继承、抽象、多态。其中封装、继承、抽象可以看作是多态的基础,而多态可以看作是封装、继承、抽象的表现。不同类的对象对同一方法体现出不同的功能就叫做多态。示例:接口:定义具有共同方法的接口public Interface Person { public void getSex();}实现类1:public class转载 2018-01-13 14:07:00 · 276 阅读 · 0 评论 -
一个类可以实现多个接口,但只能继承一个抽象类。
接口更多的是在系统架构设计方法发挥作用,主要用于定义模块之间的通信契约。而抽象类在代码实现方面发挥作用,可以实现代码的重用,例如,模板方法设计模式是抽象类的一个典型应用,假设某个项目的所有Servlet类都要用相同的方式进行权限判断、记录访问日志和处理异常,那么就可以定义一个抽象的基类,让所有的Servlet都继承这个抽象基类,在抽象基类的service方法中完成权限判断、记录访问日志和处理异常的...转载 2018-12-25 22:01:55 · 17300 阅读 · 0 评论 -
abstract class和interface有什么区别?
含有abstract修饰符的class即为抽象类,abstract 类不能创建的实例对象。含有abstract方法的类必须定义为abstract class,abstract class类中的方法不必是抽象的。abstract class类中定义抽象方法必须在具体(Concrete)子类中实现,所以,不能有抽象构造方法或抽象静态方法。如果的子类没有实现抽象父类中的所有抽象方法,那么子类也必须定义为...转载 2018-12-25 22:00:07 · 4682 阅读 · 0 评论 -
面向对象的特征有哪些方面
计算机软件系统是现实生活中的业务在计算机中的映射,而现实生活中的业务其实就是一个个对象协作的过程。面向对象编程就是按现实业务一样的方式将程序代码按一个个对象进行组织和编写,让计算机系统能够识别和理解用对象方式组织和编写的程序代码,这样就可以把现实生活中的业务对象映射到计算机系统中。面向对象的编程语言有封装、继承、抽象、多态等4个主要的特征。1-封装:封装是保证软件部件具有优良的模块性的...转载 2018-12-25 21:58:45 · 193 阅读 · 0 评论 -
Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型?
Overload是重载的意思,Override是覆盖的意思,也就是重写。重载Overload表示同一个类中可以有多个名称相同的方法,但这些方法的参数列表各不相同(即参数个数或类型不同)。重写Override表示子类中的方法可以与父类中的某个方法的名称和参数完全相同,通过子类创建的实例对象调用这个方法时,将调用子类中的定义方法,这相当于把父类中定义的那个完全相同的方法给覆盖了,这也是面向对象...转载 2018-12-25 21:56:42 · 125 阅读 · 0 评论 -
Integer与int的区别
int是java提供的8种原始数据类型之一。Java为每个原始类型提供了封装类,Integer是java为int提供的封装类。int的默认值为0,而Integer的默认值为null,即Integer可以区分出未赋值和值为0的区别,int则无法表达出未赋值的情况,例如,要想表达出没有参加考试和考试成绩为0的区别,则只能使用Integer。在JSP开发中,Integer的默认为null,所以用el表达...转载 2018-12-25 21:55:17 · 167 阅读 · 0 评论 -
静态变量和实例变量的区别?
在语法定义上的区别:静态变量前要加static关键字,而实例变量前则不加。在程序运行时的区别:实例变量属于某个对象的属性,必须创建了实例对象,其中的实例变量才会被分配空间,才能使用这个实例变量。静态变量不属于某个实例对象,而是属于类,所以也称为类变量,只要程序加载了类的字节码,不用创建任何实例对象,静态变量就会被分配空间,静态变量就可以被使用了。总之,实例变量必须创建对象后才可以通过这个对象来...转载 2018-12-25 21:53:57 · 3034 阅读 · 0 评论 -
"=="和equals方法究竟有什么区别?
==操作符专门用来比较两个变量的值是否相等,也就是用于比较变量所对应的内存中所存储的数值是否相同,要比较两个基本类型的数据或两个引用变量是否相等,只能用==操作符。如果一个变量指向的数据是对象类型的,那么,这时候涉及了两块内存,对象本身占用一块内存(堆内存),变量也占用一块内存,例如Objet obj = new Object();变量obj是一个内存,new Object()是另一个内存,此...转载 2018-12-25 21:52:19 · 193 阅读 · 0 评论 -
请设计一个一百亿的计算器
首先要明白这道题目的考查点是什么,一是大家首先要对计算机原理的底层细节要清楚、要知道加减法的位运算原理和知道计算机中的算术运算会发生越界的情况,二是要具备一定的面向对象的设计思想。首先,计算机中用固定数量的几个字节来存储的数值,所以计算机中能够表示的数值是有一定的范围的,为了便于讲解和理解,我们先以byte 类型的整数为例,它用1个字节进行存储,表示的最大数值范围为-128到+127。-1在内...转载 2018-12-25 21:42:11 · 348 阅读 · 0 评论 -
在JAVA中如何跳出当前的多重嵌套循环?
在Java中,要想跳出多重循环,可以在外面的循环语句前定义一个标号,然后在里层循环体的代码中使用带有标号的break 语句,即可跳出外层循环。例如, ok: for(inti=0;i<10;i++) { for(intj=0;j<10;j++) { System...转载 2018-12-25 21:39:10 · 90 阅读 · 0 评论 -
&和&&的区别
&和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false。&&还具有短路的功能,即如果第一个表达式为false,则不再计算第二个表达式,例如,对于if(str != null && !str.equals(“”))表达式,当...转载 2018-12-25 21:36:16 · 81 阅读 · 0 评论 -
Overload和 Override的区别。Overloaded的方法是否可以改变返回值的类型?
方法的重写Override,子类覆盖父类的方法,将子类传与父类的引用调用的还是子类的方法。重载Overloading 一个类多个方法,名称相同,参数个数类型不同。两者都是Java 多态性的不同表现。Overloaded 的方法是可以改变返回值的类型。public class Ctest(){ Public static void main() {...转载 2018-12-24 17:52:22 · 381 阅读 · 0 评论 -
什么是 java序列化,如何实现 java序列化?(写一个实例)
序列化:可以将一个对象保存到一个文件,所以可以通过流的方式在网络上传输,可以将文件的内容读取,转化为一个对象。处理对象流的机制,所谓对象流也就是将对象的内容进行流化。可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。序列化是为了解决在对对象流进行读写操作时所引发的问题。序列化的实现:将需要被序列化的类实现Serializable 接口,该接口没有需要实现...转载 2018-12-24 17:48:38 · 1333 阅读 · 0 评论 -
JAVA的事件委托机制和垃圾回收机制
java 事件委托机制的概念,一个源产生一个事件并将它送到一个或多个监听器那里。在这种方案中,监听器简单的等待,直到它收到一个事件。一旦事件被接受,监听器将处理这个事件,然后返回。垃圾回收机制垃圾收集是将分配给对象但不再使用的内存回收或释放的过程。如果一个对象没有指向它的引用或者其赋值为null,则次对象适合进行垃圾回收。链接:...转载 2018-12-24 17:46:18 · 1131 阅读 · 0 评论 -
编程输出图形
* * * * ** * * ** * ** **代码如下:public class Print { public static void main(String[] args) { for (int i = 0; i < 5; i++) { for (int j = 5; j > i; j--)...转载 2018-12-24 17:43:55 · 1408 阅读 · 1 评论 -
super()与 this()的区别?
This():当前类的对象,super 父类对象。Super():在子类访问父类的成员和行为,必须受类继承规则的约束而this 他代表当前对象,当然所有的资源都可以访问.在构造函数中,如果第一行没有写super(),编译器会自动插入.但是如果父类没有不带参数的构造函数,或这个函数被私有化了(用private 修饰).此时你必须加入对父类的实例化构造.而this 就没有这个要求,...转载 2018-12-24 17:28:07 · 659 阅读 · 0 评论 -
面试中遇到的final相关知识点-JavaGogo
final关键字的作用1. 被final修饰的类不可以被继承2. 被final修饰的方法不可以被重写3. 被final修饰的变量不可以被改变重点是第三句,被final修饰的变量不可以被改变,是变量的引用不可以被改变,还是变量的值,或者两者都不能被改变呢?示例:1. 创建一个测试类public class FinalStr{ private String str;转载 2018-01-17 16:56:20 · 273 阅读 · 0 评论