java学习【课后笔记】

博客:http://blog.csdn.net/muyang_ren

请用封装和构造完成以下练习,无特殊声明处请将属性写成private

练习一:

1) 创建一个学生类

2) 创建四个私有的字段:name,sex,age,dire

3) 分别为私有的字段提供属性

4) 测试:创建学生对象,设置属性,再分别在控制台打印该学生的基本信息

package lhy.java_1day;

class student {
	private String 	name="梁惠涌";
	private char 	sex='男';
	private int 	age=18;
	private String 	dire="嵌入式";

	public String getName() {
		return name;
	}

	public char getSex() {
		return sex;
	}

	public int getAge() {
		return age;
	}
	public String getDire() {
		return dire;
	}
}

public class Test_1 {

	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		student lhyStudent = new student();
		System.out.println("name: "+lhyStudent.getName());
		System.out.println("sex : "+lhyStudent.getSex());
		System.out.println("age : "+lhyStudent.getAge());
		System.out.println("dire: "+lhyStudent.getDire());
	}

}

练习二:

定义一个Tank类(坦克类),为其定义x(横坐标),y(纵坐标),dir(方向:值为上下左右),Type(类型)4个字段,其访问修饰符均为公有;

为Tank类定义一个构造方法实现4个字段的初始化

为Tank类定义一个ShowData方法,控制台打印4个字段值

创建一个Tank对象,横坐标为10,纵坐标为50,方向为右,类型为重型坦克,并通过调用对象的ShowData()方法打印Tank信息

package lhy.java_1day;
class tank{
	public int x;
	public int y;
	public char dir;
	public String type;

	public tank() {
		// TODO 自动生成的构造函数存根
		this.x = 100;
		this.y = 200;
		this.dir = '下';
		this.type = "重型坦克";
	}

	public void ShowData(){
		System.out.println("x = "+this.x);
		System.out.println("y = "+this.y);
		System.out.println("dir = "+this.dir);
		System.out.println("type = "+this.type);
	}
}

public class Test_2 {
	public static void main(String[] args) {
		tank tank_01 = new tank();
		tank_01.ShowData();
	}
}

练习三:

1) 创建一个计算机类:Computer

2) 创建三个字段:name:计算机名,type:计算机品牌,size:尺寸

3) 创建一个构造函数为三个字段赋初始值

4) 添加一个ShowData方法打印各字段值

5) 创建一个计算机对象,调用其ShowData();

package lhy.java_1day;

class Computer{
	private String name;
	private String type;
	private Double size;

	public Computer(){
		this.name = "小新";
		this.type = "联想";
		this.size = 15.6;
	}
	public void showData() {
		System.out.println("name : "+this.name);
		System.out.println("type : "+this.type);
		System.out.println("size : "+this.size);
	}
}
public class Test_3 {

	public static void main(String[] args) {
		Computer lianxiangComputer = new Computer();
		lianxiangComputer.showData();
	}

}

练习四:

1) 创建一个狗类:Dog

2) 为狗类添加一个name字段和sex字段

3) 为name字段和sex字段分别提供属性(name:无校验,sex:只能是”公和母”)

4) 为Dog添加ShowData方法,打印名字和性别

5) 为Dog添加YaRen方法,实现狗咬人功能,YaoRen(string str),如果str是一个”男人”,输出“汪汪”,如果str是一个”女人”,输出“喔喔”,如果str是其它的输出”哇哇”

6) 测试

package lhy.java_1day;
class Dog{
	private String name = "小黑";
	private char   sex  = '公';

	public void showData(){
		System.out.println("name : "+this.name);
		System.out.println("sex  : "+this.sex);
	}

	public void YaoRen(String str){
		if (str == "男人") {
			System.out.println("str = "+str);
			System.out.println("汪汪");
		}else if (str == "女人") {
			System.out.println("str = "+str);
			System.out.println("喔喔");
		}else {
			System.out.println("str = "+str);
			System.out.println("哇哇");
		}
	}
}
public class Test_4 {

	public static void main(String[] args) {
		Dog dog = new Dog();
		dog.showData();
		dog.YaoRen("男人");
		dog.YaoRen("女人");
		dog.YaoRen("小孩");
	}

}

练习五:

1) 创建一个老师类:Teacher

2) 为老师添加字段:id,name,sex,age,height

3) 分别为字段添加对应的属性:

id:int,不用校验

name:string,长度大于一位少于四位

sex:string,只能是男和女

age:int,只能在20-55之间

height:double,只能在1.50-1.80之间

定义一个ShowData方法,打印编号、姓名、性别、身高

4) 创建一个老师对象,调用其ShowData();

package lhy.java_1day;

import java.util.Scanner;

class Teacher{
	private int  	id;
	private String 	name;
	private String 	sex;
	private int 	age;
	private Double 	height;

	public void setId(int id) {
		this.id = id;
	}

	public void setName(String name) {
		if (name.length()>1 ||(name.length() <4)) {
			this.name = name;
		}else {
			System.out.println("名字长度出错");
			System.out.println("请输入: name");
			setName(new Scanner(System.in).next());
		}
	}

	public void setSex(String sex) {

		if (sex.equals("男") || sex.equals("女")) {
			this.sex = sex;
		}else {
			System.out.println("性别输入错误(男 or 女)");
			setSex(new Scanner(System.in).next());
		}
	}

	public void setAge(int age) {

		if (age>20&&age<55) {
			this.age = age;
		}else {
			System.out.println("年龄输入错误(20~55)");
			System.out.println("请输入: 年龄");
			setAge(new Scanner(System.in).nextInt());
		}
	}

	public void setHeight(Double height) {

		if (height>1.5 && height<1.8) {
			this.height = height;
		}else {
			System.out.println("身高输入错误(1.5~1.8)");
			System.out.println("请输入: 身高");
			setHeight(new Scanner(System.in).nextDouble());
		}
	}

	public void showData(){
		System.out.println("    ID :"+this.id);
		System.out.println("  name :"+this.name);
		System.out.println("   sex :"+this.sex);
		System.out.println("   age :"+this.age);
		System.out.println("height :"+this.height);
	}
}

public class Test_5 {

	public static void main(String[] args) {
		Teacher teacher = new Teacher();
	    Scanner stdin = new Scanner(System.in);
		System.out.println("请输入:ID");
		teacher.setId(stdin.nextInt());
		System.out.println("请输入: name");
		teacher.setName(stdin.next());
		System.out.println("请输入: 年龄");
		teacher.setAge(stdin.nextInt());
		System.out.println("请输入: 性别");
		teacher.setSex(stdin.next());
		System.out.println("请输入: 身高");
		teacher.setHeight(stdin.nextDouble());
		stdin.close();

		teacher.showData();
	}
}

练习六:

1) 定义一个水果类:Fruit,内有公有的字段:name,color,weiDao

2) 定义一个构造函数:为三个字段赋初始值

3) 为Fruit类添加一个方法public string GetMsg(),返回该水果的基本信息

4) 定义一个榨汁机类:ZhaFruit

5) 为ZhaFruit类添加一个榨水果汁方法:public string GetFruitZhi(Fruit f),返回:

”一杯XX(颜色)的XX(水果名)汁,味道XXX”

6) 在测试类Program的Main方法内创建一个水果:

名字:苹果,颜色:青色,味道:酸酸的

7) 调用该水果的GetMsg(),用一个字符串变量接收

8) 打印该方法的返回值:”苹果,青色,酸酸的”

9) 创建一个ZhaFruit榨汁机对象

10) 调用该榨汁机对象的string GetFruitZhi(Fruit f)方法,并传一个水果(苹果)对象

11) 调用该榨汁机对象的GetFruitZhi(Fruit f)方法,打印结果为:一杯青色的苹果汁,味道酸酸的

12) 定义一个水果对象:

名字:桔子,颜色:黄色,味道:甜甜的

13) 调用该榨汁机对象的string GetFruitZhi(Fruit f)方法,并传一个水果(桔子)对象

14)
调用该榨汁机对象的GetFruitZhi(Fruit f)方法,打印结果为:一杯黄色的桔子汁,味道甜甜的

package lhy.java_1day;

class Fruit{
	public String name;
	public String color;
	public String weidao;

	public Fruit(String name,String color,String weidao){
		this.name=name;
		this.color=color;
		this.weidao=weidao;
	}

	public Fruit(){
	}

	public String GetMsg(){
			return this.name+","+this.color+","+this.weidao;
	}
}
class ZhaFruit{
	public String GetFruitZhi(Fruit f){
		String string ="一杯"+f.color+"的"+f.name+"汁,味道"+f.weidao;
		return string;
	}
}

public class Test_6 {

	private static String msg;

	public static void main(String[] args) {
		Fruit fruit1 = new Fruit("苹果","青色","酸酸的");
		msg = fruit1.GetMsg();
		System.out.println(msg);
		ZhaFruit zhafuit1 =new ZhaFruit();
		System.out.println(zhafuit1.GetFruitZhi(fruit1));

		Fruit fruit2 = new Fruit("桔子","黄色","甜甜的");
		ZhaFruit zhafuit2 =new ZhaFruit();
		System.out.println(zhafuit2.GetFruitZhi(fruit2));

	}

}
时间: 2024-10-12 23:04:22

java学习【课后笔记】的相关文章

Java学习整理笔记(一)Java认识

一.Java介绍: Java技术主要分成三个部分:Java语言.Java运行环境和Java类库.(一般情况下并不区分指哪个部分) 即Java并不只是一门编程语言,也是一个完整的平台,有一套庞大的开发类库(包含很多可以重复利用的代码)和提供跨平台的可移植性.自动垃圾回收以及安全性等服务的执行环境. 1.Java语言: 跟其他编程语言一样,定义的一套用于程序设计的语法规范. 2.Java运行环境: 执行Java应用程序(Java Application)必须安装 Java Runtime Envir

Java学习课堂笔记第一天

安装JDK JDK的官网网址如下: http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html 配置JDK环境变量参数设置 (1)JAVA_HOME:   D:\Program Files (x86)\Java\jdk1.6.0_25 (2)           Path:   %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; (3)CLASSPATH:   .;%JAVA_H

Java 学习整理笔记(二)Java基本语法结构

一.源文件的编写 Java是完全面向对象的语言,所以Java的所有操作都是基于类(class)完成的.Java中所有程序的代码都需要放在一个类中,类用关键字class声明,在class之前可以添加一些修饰符,Java应用程序的源文件由若干个书写形式相互独立的类组成. 1.例子: // HelloDate.java import java.util.Date; //引入 java.util 包中的Date类 public class HelloDate{ /* * 该程序的目的是:输出当前系统的时

java学习小笔记(三.socket通信)【转】

三,socket通信1.http://blog.csdn.net/kongxx/article/details/7288896这个人写的关于socket通信不错,循序渐进式的讲解,用代码示例说明,运用流和socket进行远程通讯 2.最简单的socket是一个服务端对应一个客户端 server的写法 ServerSocket server = new ServerSocket(10000); Socket socket = server.accept(); BufferedReader in =

java学习记录笔记--继承,super,Object类

继承: Java中的继承是单继承的. 1.子类拥有父类的全部属性和方法. 可是属性和方法的修饰符不能使private. 2.能够复用父类的代码. 方法的重写须要满足的条件: a.返回值类型 b.方法名 c.參数类型及个数 必须要与父类全然同样. 继承的初始化顺序: 1.初始化父类再初始化子类 2.先运行初始化 对象属性 ,再运行 构造方法 中的初始化. finalkeyword: final能够修饰 类,方法,属性和变量. final修饰类,则该类不同意被继承. final修饰方法,则该方法不同

Java学习整理笔记(三)数据类型

数据类型: 数据类型确定了数据在内存中占用的存储空间以及存储方式.每个数据类型都有它的取值范围,编译器根据每个变量或常量的数据类型为其分配内存空间. Java语言的数据类型可以分为两类:一类是简单数据类型(或基本数据类型),例如整数类型.浮点数类型.字符型类型和布尔类型等:另一种是引用类型,例如数组类型.类.接口等. 一.基本数据类型 8种基本数据类型,分别是字节型(byte).短整型(short).整型(int).长整型(long).字符型(char).浮点型(float).双精度型(doub

java学习笔记3

高手Java核心技术学习笔记 掌握Java核心技术是学习和掌握好Java技术的关键,下边分17个点对这些Java核心技术进行讲解. 1.Java中没有多继承,而是用接口来代替多继承 2.运行一个已经编译的程序时,Java解释器总是从指定类的main方法中的代码开始执行,因此,执行代码中必须有一个main函数. 3.Java是典型的强类型语言,即必须声明变量的类型,Java中有8种类型,6种数值类型(4个整数型和2个浮点型).一个字符类型和一个boolean类型. 4.强制类型转换:int nx

9/15-9/21 java学习总结(课堂及课后学习总结) &实验总结2

9/15-9/21 java学习总结(课堂及课后学习总结) &实验总结2 String类两种实例方法及区别 第一种方法是通过直接赋值的方式,另外一种方法是调用构造方法完成实例化.. 区别:第一种方法的话一个字符串被一个名称引用过后如果再有相同的字符串声明时,就不用再重新开辟空间.第二种方法的话每次引用字符串都必须要重新开辟空间. StringBuffer类 String对象一经声明,便不能修改它的内容,修改的只是引用的地址:而StringBuffer对象是可以改变它的内容的 StringBuff

Java学习笔记3-操作符

Java基本操作符:+.-.*./.%.=.==.!=.+=.-=. 优先级:先乘除后加减,如果是连接符+号会优先往前匹配,比如 a+++++b,会被解释称 a++ ++ +b,所以会报错,需要自行使用括号隔离为 (a++) + (++b). 对象的引用如果赋值给了对象的引用后,2 个对象将指向同一个引用,有一个对象的引用重新赋值后将同时影响到另一个对象,比如 ClassName classA = new ClassName(); ClassName classB = new ClassName

java学习笔记10--泛型总结

java学习笔记系列: java学习笔记9--内部类总结 java学习笔记8--接口总结 java学习笔记7--抽象类与抽象方法 java学习笔记6--类的继承.Object类 java学习笔记5--类的方法 java学习笔记4--对象的初始化与回收 java学习笔记3--类与对象的基础 java学习笔记2--数据类型.数组 java学习笔记1--开发环境平台总结 本文地址:http://www.cnblogs.com/archimedes/p/java-study-note10.html,转载