9-23面试

来源:互联网 发布:我的世界ipad枪械js 编辑:程序博客网 时间:2024/06/07 08:49

1.什么是oo思想

 面对对象思想

2.什么是jre,什么是jdk

 jdk是java的开发包,其中包括jre;jre仅仅是java的运行时环境;而JDK包括了同版本的JRE,此外还包括有编译器和其它工具 
JDK是java开发工具包(java Development Kit)的缩写。它是一种构建在java平台上发布的应用程序、apple和组件的开发环境。JDK是一切java应用程序的基础,所有的java应用程序是构建在这个之上的。它是一组API,也可以说是一些java Class。要成为一个Java程序员,JDK是必不可少的最基本的工具。 JRE是Java运行环境(Java Runtime Enviroment)的缩写。它基本上就和Java虚拟机是同一个概念。一般来说,在谈论一个具体的产品的时候,可以说“JRE”,而说到理论中的一个模型的时候,我们常用的是“Java虚拟机”。要使用Java程序,JRE是必不可少的环境。 

3.java三大特征

封装

1. 封装就是将类的信息隐藏在类内部,不允许外部程序直接访问,而是通过该类的方法实现对隐藏信息的操作和访问

2.

 封装是怎么实现的呢?

   a. 需要修改属性的访问控制符(修改为private);

   b. 创建getter/setter方法(用于属性的读写);

   c. 在getter/setter方法中加入属性控制语句(用于判断属性值的合法性);

复制代码
1 public class Student{2     private float score;3     public void setScore(float score){4         this.score = score;5     }6     public float getScore(){7         return score;8     }9 }
复制代码


二、 继承

继承是类与类的一种关系,比较像集合中的从属于关系。比如说,狗属于动物。就可以看成狗类继承了动物类,那么狗类就是动物类的子类(派生类),动物类就是狗类的父类(基类)。在Java中是单继承的,也就是说一个子类只有一个父类。

复制代码
 1 //父类:动物类 2 public class Animal{ 3     public int age; 4     public String name; 5     public void eat(){ 6         System.out.println("动物具有吃东西的本领!"); 7     } 8 } 9 //子类:狗类10 public class Dog extends Animal {11     12 }
复制代码

 

三、 多态

多态指的是对象的多种形态。多态有两种:引用多态和方法多态。继承是多态的实现基础。

1.引用多态

父类的引用可以指向本类的对象;父类的引用可以指向子类的对象。

复制代码
 1 //父类:动物类 2 public class Animal{ 3     public int age; 4     public String name; 5     public void eat(){ 6         System.out.println("动物具有吃东西的本领!"); 7     } 8 } 9 //子类:狗类10 public class Dog extends Animal {11     12 }13 //测试类14 public class Test{15     public static void main(String[] args) {16     //父类的引用可以指向本类的对象17     Animal ani1 = new Animal();18     //父类的引用可以指向子类的对象19     Animal ani2 = new Dog();    20     } 21 }
复制代码

2. 方法多态

创建父类对象时,调用的方法为父类方法;

创建子类对象时,调用的方法是子类重写的方法或继承自父类的方法;

复制代码
 1 //父类:动物类 2 public class Animal{ 3     public int age; 4     public String name; 5     public void eat(){ 6         System.out.println("动物具有吃东西的本领!"); 7     } 8 } 9 //子类:狗类10 public class Dog extends Animal {11     public void eat(){12         System.out.println("狗是吃肉的。");13     }14 }15 //测试类16 public class Test{17     public static void main(String[] args) {18     //父类的引用可以指向本类的对象19     Animal ani1 = new Animal();20     //父类的引用可以指向子类的对象21     Animal ani2 = new Dog();22     //输出动物具有吃的本领23     ani1.eat();    24     //输出狗是吃肉的25     ani2.eat();26     } 27 }
复制代码

4.成员变量用static和不用static修饰有什么区别

 Java 中被 static 修饰的成员称为静态成员或类成员。它属于整个类所有,而不是某个对象所有,即被类的所有对象所共享。静态成员可以使用类名直接访问,也可以使用对象名进行访问。当然,鉴于他作用的特殊性更推荐用类名访问


6.常见异常

java.lang.NullPointerException(空指针异常) 

java.lang.ClassNotFoundException 指定的类不存在

java.lang.NumberFormatException字符串转换为数字异常

java.lang.IndexOutOfBoundsException数组下标越界异常

java.lang.IllegalArgumentException方法的参数错误

java.lang.IllegalAccessException没有访问权限

java.lang.ArithmeticException数学运算异常

java.lang.ClassCastException数据类型转换异常

java.lang.FileNotFoundException文件未找到异常

java.lang.NoSuchMethodException方法不存在异常


7.编码实现存储字符串

package game2;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;public class io {public static void main(String[] args) throws IOException {String str="111!";File txt=new File("C:\\Users\\Administrator\\Desktop\\nihao.txt");if(!txt.exists()){txt.createNewFile();}byte bytes[]=new byte[512];bytes=str.getBytes(); //新加的int b=str.length(); //改FileOutputStream fos=new FileOutputStream(txt);fos.write(bytes,0,b);System.out.println("写入成功");fos.close();}}











原创粉丝点击