9-23面试

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();
				
				
	}
}











评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值