2020-09-10

标题 javaOOP(面向对象)

1.什么是B/S架构?什么是C/S架构
B/S(Browser/Server),浏览器服务器程序
C/S(Client/Server),客户端/服务端,桌面应用程序
2.java都有哪些开发平台?
java SE:主要用在客户端开发。
java EE:主要作用在web应用程序开发
java ME:主要用在嵌入式应用程序开发
3.什么是JDK?什么是JRE?
JDK:java development kit:java开发工具包,是开发人员所需安装的环境
JRE:java ruantime Envirnment:java运行环境,java程序所需安装的环境
4.java语言有哪些特点
1.简单易学,有丰富的类库
2.面向对象(java最重要的特性,让程序耦合度更低,内聚性更高)
3.与平台无关性(JVM是java快平台使用的根本)
4.可靠安全
5.支持多线程
5.面向对象和面向过程的区别?
面向对象:一种较早的编程思想,顾名思议就是该思想是站着过程的角度思考问题,强调的就是功能行为,功能的执行过程,即先后顺序,而每一个功能我们都使用函数(类似于方法)把这些步骤一步一步实现。使用的时候依次调用函数就可以了。
面向对象:一种基于面向过程的新编程思想,顾名思议就是该思想是站在对象的角度思考问题,我们把多个功能合理放到不同对象里,强调的是具备某些功能的对象。
具备某种功能的实体,称为对象。面向对象最小的程序单元是:类。面向对象更符合常规的思维方式,稳定性好,可重用性强,易于开发大新软件产品,有良好的可维护性。
在软件工程上,面向对象可以使工程更加模块化,实现更低的耦合和更高的内聚。
6.什么是数据结构
计算机保存,组数数据的方式
7.java的数据结构有哪些?
线性表(ArrayList) 链表(LinkedList) 宅(Stack) 队列 (Queue) 树(Tree)
8.什么是oop>
面向对象编程
9.类与对象的关系?
类是对象的抽象,对象是类的具体,类是对象的模板,对象是类的实例
10.Java中有几种数据类型
整形:byte short int long 浮点数:float double 字符型:char 布尔型:boolean
11.标识符的命名规则?
1.标识符的含义:
是指在程序中,我们自己定义的内容,譬如,类的名字,方法名称以及变量名称等等,都是标识符。
2.命名规则:(硬性要求)
标识符可以包含英文字母,0-9的数字,$以及_
标识符不能以数字开头,标识符不是关键字
3.命名规范:(非硬性要求)
类名规范:首字符大写,后面每个单词首字母大写(大驼峰)
变量名规范:首字母小写,后面每个单词首字母大写(小驼峰)
方法名规范:同变量名
12.instanceof关键字的作用
instanceof严格来说是java中的一个双目运算符,用来测试一个对象是否为一个类的实例,用法为(boolean result=obj instance Class)
其中Obj作为一个对象,Class表示一个类或者一个接口,当obj为Class的对象,或者是直接或间接子类,或者是接口的实现类,结果result都返回true,否则返回false。
注意:编译器会检查obj是否能转换成右边的class类型,如果不能转换则直接报错,如果不能确定类型,则通过编译,具体看运行时定。
int i=0;
System.out.println(i instanceof Integer);//编译不通过i必须是引用类型,不能是基本类型
System.out.println(i instanceof object);//编译不通过
Integer integer=new Integer(1);
System.out.println(integer instanceof Integer);true
//false,在javaSE规范中对instanceof运算符的规定就是:如果obj为null,那么将返回false
System.out.println(null instanceof obj);
13.什么是隐式转换,什么是显示转换?
自动类型转换和强制类型转换
14.char类型能不能转成int类型?能不能化成string类型,能不能转成double类型
char在java中也是比较特殊的类型,它的值从1开始,一共有2的16次方个数据;
char<int<float<double;char类型可以隐式转成int,double类型,但不能隐式转换成string;如果char类型转成byte,short 类型的时候,需要强转。
15.什么是拆装箱?
装箱就是自动将基本数据类型转换为包装器类型(int–>Integer);调用方法:Integer的valueOf(int)方法
拆箱就是自动将包装器类型转换为基础数据类型(Integer–>int)。调用方法:Integer的Value方法
在javaSE5开始就提供了自动装箱的特性,如果要生成一个数值为10的Integer对象,只需要这样就可以了:
Integer i=10;
面试题1:以下代码会输出什么?
public class Main{
public static void main(String[] args){
Integer i1=100;
Integer i2=100;
Integer i3=200;
Integer i4=200;
System.out.println(i1i2);
System.out.println(i3
i4);
}
}
果:true
false
16.Java中的包装类都是哪些?
byte:Byte,Short,int:Integer,long:Long,float:Float,double:Double,char:Character,boolean:Boolean
17.一个java类中包含哪些内容?
属性,方法,内部类,构造方法,代码块
18.那针对浮点型数据运算出现的误差的问题,你怎么解决?
使用Bidecimal类进行浮点型数据的运算
19.面向对象的特征有哪些方面
抽象:抽象是将一类对象的共同特征总结出来的构造类的过程包括数据抽象和行为抽象两方面。抽象只关注对象有哪些属性
性和行为,并不关注这些行为的细节是什么
继承:
继承是从已有类得到继承信息创建新类的过程,提供继承信息的类被称为父类(超类,基类);得到继承信息的类被称为子类(派生类)。继承让变化中的软件系统有了一定的延续性,同时继承也是封装程序中可变因素的重要手段(如果不能理解请阅读《Java与模式》或《设计模式精解》中,关于桥梁模式的部分。)
封装:
封装是把数据和操作数据的方法绑定起来,对数据的访问只能通过已定义的接口。面向对象的本质就是将现实世界描绘成一系列完全自治,封闭的对象。我们在类中编写的方法就是对实现细节的一种封装;我们编写一个类就是对数据操作和数据操作的封装。可以说,封装就是隐藏一切可隐藏的东西,只向外提供最简单的接口。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值