首页 技术 正文
技术 2022年11月22日
0 收藏 599 点赞 4,073 浏览 1633 个字

Java面向对象的三大特性

封装、继承、多态。

super()与this()的区别?

This():当前类的实例,一个类,如果继承了父类,那么通过this既可以访问当前类的属性和方法,也可以访问父类的属性和方法,但是当子类重写了父类的方法之后,super.方法名,访问的是父类的方法,this.方法名访问的是子类的方法。super父类实例,在构造方法中,super()必须要写在构造的第一句

作用域public,protected,private,以及不写时的区别

  • Public:任何位置都可访问
  • Private:当前类内部
  • Protected: 不同包的子类、当前包内都可用
  • Default、friendly/不写时:同一包内

JAVA的事件委托机制和垃圾回收机制

java 事件委托机制的概念,一个源产生一个事件并将它送到一个或多个监听器那里。在这种方案中,监听器简单的等待,直到它收到一个事件。一旦事件被接受,监听器将处理这个事件,然后返回。

垃圾回收机制 垃圾收集是将分配给对象但不再使用的内存回收或释放的过程。如果一个对象没有指向它的引用或者其赋值为null,则此对象适合进行垃圾回收

什么是java序列化,如何实现java序列化?

序列化:

可以将一个对象保存到一个文件,所以可以通过流的方式在网络上传输,可以将文件的内容读取,转化为一个对象。

处理对象流的机制,所谓对象流也就是将对象的内容进行流化。可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。序列化是为了解决在对对象流进行读写操作时所引发的问题。

序列化的实现:

将需要被序列化的类实现Serializable接口,该接口没有需要实现的方法,implements Serializable只是为了标注该对象是可被序列化的,然后使用一个输出流(如:FileOutputStream)来构造一个ObjectOutputStream(对象流)对象,接着,使用ObjectOutputStream对象的writeObject(Object obj)方法就可以将参数为obj的对象写出(即保存其状态),要恢复的话则用输入流。

一个”.java”源文件中是否可以包括多个类(不是内部类)?有什么限制?

可以。但是必须有一个和文件名同名的类,且这个类是用public修饰

Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型?

重写override:

1 发生在子类中 2 方法名、参数列表、返回值类型必须相同 3 访问修饰符不能低于父类的

重载overload:

1 发生在同一个类中 2 方法名必须相同 ,参数列表必须不同 3 与访问修饰符、返回值类型无关

重载的作用:实现方法名的复用

Final关键字有什么特点

Final修饰的属性是常量

Final修饰的方法不可以重写

Final修饰的类不可以继承

Java中最基本、简单的两种排序

public bubbleSort(){  //冒泡排序

int a[]={1,54,6,3,78,34,12,45};

int temp=0;

for(int i=0;i<a.length;i++){

for(int j=i+1;j<a.length;j++){

if(a[i]>a[j]){

temp=a[i];

a[i]=a[j];

a[j]=temp;

}

}

}

public class ChoiceSort {  //选择排序

public static void _choiceSort() {

for (int i = 0; i < a.length; i++) {

int min = i; /* 将当前下标定义为最小值下标 */

for (int j = i + 1; j < a.length; j++) {

if (a[min] > a[j]) { /* 如果有小于当前最小值的关键字 */

min = j; /* 将此关键字的下标赋值给min */

}

}

if (i != min) {/* 若min不等于i,说明找到最小值,交换 */

int tmp = a[min];

a[min] = a[i];

a[i] = tmp;

}

}

}

}

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:8,994
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,507
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,350
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,135
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,768
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,845