Java知识点

1.Java常用的数据类型,举例说明

Java是一种强类型化的编程语言,每个变量和表达式都有一个在编译时已知的类型。Java数据类型分为两种,一种是简单数据类型。分为如下:

boolean 布尔类型,用于存储一个布尔类型的值,true和false

int    整型       用于存储整数,如:人数,编号,天数等等。

double     双精度浮点型       用于存储小数数字,如:价格,身高,体重等等。

char 字符型    用于存储一个字符,如:‘男’或‘女’、‘是’或‘否’等等

String      字符串型       用于存储一个字符串,如:个人姓名,地址,电子邮件等等。

第二种是引用类型(class)接口interface,数组

2.简要回答Java的编码规范

  1. 类名一定要有意义,杜绝类似aaabbb这样的书写。
  2. 类名首字母要大写,如果类名由多个单词组成,每个单词首字母均使用大写。
  3. 定义类要求使用public进行修饰。
  4. {}通常用来表示一个层次结构,{一般放在结构第一行的末尾,如:public class HelloWorld {}放在结构结尾,并且独占一行。
  5. 代码缩进,低层次的代码需要比高层次的代码缩进若干格。

3.变量命名的规则和规范

变量命名规则:

1) 变量名必须以字母、_ $符号开头,但不推荐使用$符号。

2) 变量名可以包含数字,但不能以数字开头。

3) 除了第一个字符,后面可以跟任何数字、字母、_$

4) 不可以使用Java的关键字,如:Stringclassint等。

5) 同一作用域内的变量名不可以重复。

命名规范:

1) 当变量名由单个单词构成时,整个单词均小写;当变量名由多个单词构成时,如:numberOfStudent,第一个单词首字母小写,其后单词首字母均大写。

2) 变量名使用有意义的单词组成。

4.Switch结构的特点是什么?

switch只能对整型和字符型进行判断。

switch结构一般用来处理等值情况下的比较,此规则由其语法可以看出,case关键字后面跟随的是常量,而不是范围区间。

在进行等值情况的判断时,switch结构优越于if结构,因为switch结构没有判断的过程,即像出租车一般直达目的地而没有中间站,区别于类似公交车的if结构,在没有到达目的地之前,即条件未满足之前,所有的中间站都会停下

5.简单描述for,while和do…while的区别,以及For循环的执行步骤。

1)while循环先判断,后执行;do…while循环先执行,后判断。

2)如条件为false,while循环一次都不执行;而do…while循环不管如何,都至少执行一次循环。

3)for循环适合循环次数明确时,while和do…while适合循环次数不明确时

For循环执行的步骤

第一步:执行初始部分(int i = 0;)。

第二步:执行结束判断表达式(i <= 10;)。

第三步:根据结束判断表达式判断结果。

  1. 如果为true,执行循环操作部分。
  2. 如果为false,退出循环,以下步骤均不执行。

第四步:执行自增(减)部分,改变循环变量的值(i++)。

第五步:重复执行第二步、第三部、第四步,直至退出for循环。可见,在for循环中,初始部分仅仅执行一次

6.简述数组声明以及使用的语法?如何实现数组元素的排序?

数组类型[] 数组名=new 数组类型[个数]。 数组名[下标]。下标从0开始到数组个数-1终止。

数组元素排序可以使用选择法排序和冒泡排序,也可调用Java提供的数据工具类Arrays.sort(数组名)进行数组排序。

7.什么是对象,什么是类?简述使用类的步骤

万物皆对象,对象就是真实存在于世界的物体,具有行为和特征。

类是一组具有相同属性和行为的对象的集合。对象所拥有的特征称为类的属性,对象的行为称为类的方法。

使用类的步骤

使用class关键字定义类

使用new关键字创建对象

使用“.”点操作符访问类的属性或方法

8.描述封装

封装就是把不想或者不该告诉别人的东西隐藏起来,把可以告诉别人的公开;

封装的具体做法就是把属性私有化,提供公共的访问方法来访问这些属性,在这些共有的方法中实现对属性的控制。

9.描述构造方法及其特点

构造方法是用来实例化一个类的对象的,在实例化类对象时调用这个类的构造方法,其有如下特点:

构造方法是一个特殊的方法。Java中的每一个类都有构造方法,用来初始化该类的对象;

构造方法名与类名相同,没有返回类型;

构造方法可重载;

构造方法只能由new关键字和this()调用,this()只能在构造方法中使用,用来调用其他构造方法,且只能作为构造方法代码体的第一条语句。

10.请说出作用域public private,protected和默认修饰符的区别?

作用域      当前类     同一包    子孙类    其他包

Public      可用       可用      可用      可用

Protected   可用       可用      可用      不可用

无修饰符    可用       可用      不可用    不可用

Private     可用       不可用    不可用    不可用

需要说明是,protected修饰的类的其子类不管在那个包均可用。

11.重载和重写有什么区别?

   重载:在同一个类中发生,方法名相同,参数列表不同,其中参数列表有:个数不同,顺序不同,类型不同

   重写:在父类和子类中出现方法名相同,参数相同,返回值类型也相同,子类重写了父类的方法

12.抽象类和接口有什么区别?

含有abstract修饰符的class即为抽象类,抽象类不能实例化,抽象类中的方法不必都是抽象的,抽象类必须被继承。

接口是一种特殊的抽象类,接口中的方法都是抽象方法,并且接口不能有构造方法,接口只能被类实现,不能被继承。实现某个接口,就是要重写接口中所有的抽象方法。

一个类可以实现多个接口,但只能继承一个类。

13.父类引用指向子类对象有什么优点和缺点?

子类是对父类的一个改进和扩充,所以子类功能更强大,定义一个父类引用指向子类对象既可以调用父类中定义的属性和方法,还可以调用子类重写父类的方法,缺点就是子类中定义而父类中没有的方法,父类引用是无法调用的。

另外,父类引用指向子类对象,使得对象具有了两种不同的形态,是实现多态的必要条件之一。

14.简述java中实现多态的必要条件?

   要有继承

要重写

父类引用指向子类对象(需要举例描述,例子自己想一个)

15.描述Java异常处理try、catch、finally、throw、throws5个关键字?

   try:有可能会出现异常的代码一定要放到try代码块中;

   catch:捕获和处理异常;

   finally:不管有没有异常都要执行的代码;

   throw:用来抛出异常而自己不处理;

   throws:用来声明方法有可能抛出的各种异常。

16.描述ArrayList和LinkedList?

ArrayList是List接口的一个实现类,ArrayList就像可变大小的数组。它的优点在于遍历元素和随机访问元素的效率比较高。

LinkedList也是List接口的一个实现类,LinkedList提供额外的方法在LinkedList的首部或尾部添加或删除元素。相对于ArrayList而言,在插入或者删除元素时,LinkedList的效率更高。

17.简述JDK是什么?Java源代码的文件扩展名是什么?编译后,文件扩展名是什么?Java的程序入口是什么?完整的写出来。

Java Develop kit:java开发工具包 。源文件扩展名.java 编译之后.class ,Java程序的入口是public static void main(String[] args){}

18.简述JDBC

JDBC的全称是Java DataBase Connectivity(Java数据库连接,严格地讲,JDBC是Sun Microsystems注册的商标而非缩写)。JDBC是SUN公司定义的Java操作数据库的规范(一系列接口)。通过JDBC可以操作任何的关系数据库(前提是具备数据库JDBC驱动程序)

19.Java程序访问数据库步骤

第一步:加载并注册驱动程序

第二步:创建一个数据库连接(Connection)对象

第三步:创建一个执行SQL语句对象(PreparedStatement)

第四步:执行语句

第五步:使用结果集(ResultSet)对象

第六步:关闭结果集对象

第七步:关闭SQL语句对象

第八步:关闭连接                       

20.常见的条件结构有哪些?break和continue的区别?

Java中常用的条件结构有if,if..else … if…else if ..else if…else和switch case 结构。

。break和continue都是结束循环,break结束所有循环,continue结束当前循环。

转载于:https://my.oschina.net/u/3820331/blog/1832276

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值