每日一题(java编写笔记本&类,对象&接口)

1.用java编写笔记本

需求描述:能存储记录
                  不限制能存储的记录条数
                  能知道已经存储的记录的数量
                  能查看每一条记录
                  能删除一条记录
                  能列出所有的记录

/**
 * java笔记本功能
 */

package shuaTi;

import java.util.ArrayList;
import java.util.List;

public class NoteBook {
	private List notes = new ArrayList();
	
	public void add(String note) {
		notes.add(note);
	}
	
	public void add(int location,String note){
		notes.add(location,note);
	}
	
	public int getSize() {
		int size = notes.size();
		return size;
	}
	
	public String getNote(int index) {
		return notes.get(index);
	}
	
	public void removeNote(int index) {
		notes.remove(index);
	}
	
	public String[] list() {
		int size = getSize();
		String[] result_set = new String[size];
		notes.toArray(result_set);
		return result_set;
	}
	
	public static void main(String[] args) {
		System.out.println("Hello World!");
		String[] a = new String[2];
		a[0] = "first";
		a[1] = "second";
		
		NoteBook noteBook = new NoteBook();
		noteBook.add("first record");
		noteBook.add("second record");
		noteBook.add(1,"third record");
		System.out.println(noteBook.getSize());
		System.out.println(noteBook.getNote(0));
		System.out.println(noteBook.getNote(1));
		System.out.println("**********");
		noteBook.removeNote(1);
		String nb[] = noteBook.list();
		for(String s:nb) {
			System.out.println(s);
		}
	}
}

 

2,类和对象

设计一个学生类 Student 和它的子类 Undergradute, 要求如下:
Student 类有 name(姓名) 和 age(年龄), 一个包含两个参数的构造方法, 用于给 name 和
age 属性赋值, 一个 show()方法 dayinStudent 的属性信息。
本科生类 Undergraduate 增加一个 degree(学位) 属性。 有一个包含三个参数的构造方法,
前两个参数用于给继承的 name 和 age 赋值, 第三个参数给 degree 专业赋值, 一个 show
() 方法打印 Undergrate 的属性信息。
在测试类中创建 Student 对象和 Undergraduate 的属性信息。
 

package shuaTi;

/**
 * 
 *类和面向对象
 */
public class object {

	public static void main(String[] args) {
		Student stu = new Student("张三",14);
		stu.show();
		Undergradute ud = new Undergradute("李四", 15, "master");
	}
}


class Student{
	
	String name;
	int age;
	
	public Student(String name,int age) {
		this.name = name;
		this.age = age;
	}
	
	
	public void show() {
		System.out.println("dayinStudent");
	}
}

class Undergradute extends Student{
	
	String degree;

	public Undergradute(String name, int age,String degree) {
		super(name,age);
		this.degree = degree;
	}
	
	public void show() {
		System.out.println("Undergraduate");
	}
	
}

3,接口实现

设计一个 Shape 接口和它的两个实现类 Square 和 Circle, 要求如下:
Shape 接口中有一个抽象方法 area(), 方法接收一个 double 类型的参数, 返回一个 double
类型的结果。
Square 和 Circle 中实现了 Shape 接口中的 area()抽象方法, 分别求正方向和圆形的面积并
返回。
在测试类中创建 Square 和 Circle 对象, 计算边长为 2 的正方形面积和半径为 3 的圆形面积。
 

package shuaTi;

public interface Shape {

	public double area(double parameter);
	
}

class Square implements Shape{

	@Override
	public double area(double parameter) {
		// TODO Auto-generated method stub
		return parameter*parameter;
	}
	
}


class Circle implements Shape{

	@Override
	public double area(double parameter) {
		// TODO Auto-generated method stub
		return Math.PI*parameter*parameter;
	}
}



package shuaTi;

public class testInterface {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Square square = new Square();
		System.out.println(square.area(2));
		
		Circle circle = new Circle();
		System.out.println(circle.area(3));
	}

}

 

你可能感兴趣的:(面向对象,Java,面试题)