第三周学习记录

                          201711671112《JAVA程序设计》第三周学习总结

教材学习内容总结

1、面对对象编程的三个特性:封装性、继承和多态。

2、类是java语言中最重要的数据类型,包括类声明和类体。类命名的编程风格:如果类名使用拉丁字母,那么首字母大写;类名最好容易识别、见名起意,由单词复合而成时,每个单词的首字母大写,ChinaMade。

3、变量的声明用来存储属性的值,方法可以对类中声明的变量进行操作。

4、声明变量部分所有变量被称为成员变量或域变量,成员变量在整个类内有效,编程风格:一行只声明一个变量

5、无static 实例方法,反之,类方法。局部变量只在方法内有效,而且与其声明的位置有关,方法的参数在整个方法内有效,方法内的局部变量从声明的位置之后开始有效,体现了封装性。

6、如果局部变量的名字与成员变量的名字相同,那么成员变量被隐藏,在整个方法内失效。如果使用被隐藏的成员变量,必须使用关键字this。成员变量有默认值,局部变量没有,所以必须保证局部变量有具体值。对成员变量的操作只能放在方法中,声明成员变量时可以赋予初值。

7、UML图用于描述一个系统的静态结构,如果类的名字是斜体,说明是抽象类, 变量名字:类型

8、当程序用类创建对象时需要使用构造方法,类构造方法的名字必须与它所在的类的名字完全相同;构造方法没有类型;可以在一个类中多个构造方法,但是不许参数不同:个数不同,或者参数个数相同但是参数列表中对应的某个参数类型不同(重载)

9、为声明对象分配变量

class XiyoujiRenwu{
		float height,weight;
		String head,ear;
		void speak(String s) {
			System.out.println(s);
		}
	}
public class Example4_1 {
	public static void main(String[] args) {
		XiyoujiRenwu zhubajie;         //声明对象
		zhubajie=new XiyoujiRenwu();   //为对象分配变量(使用new和默认的构造方法)
	}

}

 

package Example4_2;
class Point{
	int x,y;
	Point(int a,int b){
		x=a;
		y=b;
	}
}
public class Example4_2 {

	public static void main(String[] args) {
		Point p1,p2;           //声明对象p1和p2
		p1=new Point(10,10);   //为p1分配变量
		p2=new Point(23,35);   //为p2分配变量
	}
}

一个类通过使用new运算符可以创建多个不同的对象,这些对象的变量将被分配不同的内存空间。

10、体现封装

package Example4_3;
class XiyoujiRenwu{
	float height,weight;
	String head,ear;
	void speak(String s) {
		head="歪着头";
		System.out.println(s);
	}
}
public class Example4_3 {

	public static void main(String[] args) {
		XiyoujiRenwu zhubajie,sunwukong;// 声明对象
		zhubajie=new XiyoujiRenwu();
        sunwukong=new XiyoujiRenwu();
        zhubajie.height=1.80f;
        zhubajie.head="大头";
        zhubajie.ear="一双大耳朵";
        sunwukong.height=1.62f;
        sunwukong.weight=1000f;
        sunwukong.head="秀发飘飘";
        System.out.println("zhubajie的身高:"+zhubajie.height);
        System.out.println("zhubajie的头:"+zhubajie.head);
        System.out.println("sunwukong的重量:"+sunwukong.height);
        System.out.println("sunwukong的头:"+sunwukong.head);
        zhubajie.speak("俺想娶媳妇");
        System.out.println("zhubajie现在的头:"+zhubajie.head);
        sunwukong.speak("老孙我重1000斤,我想骗八戒背我");
        System.out.println("sunwukong现在的头:"+sunwukong.head);
      }

}

11、假如程序中使用了空对象,程序在运行中会出现异常NullPointerException.

12、 一个类声明的两个对象如果具有相同的引用。二者就具有完全相同的变量

13、将对象p2的引用赋给了对象p1

package Example4_5;
public class Rect{
	double width;  //矩形的宽 
	double height; //矩形的高
	double getArea() {
		double area=width*height;
		return area;
	}
}
public class Lader{
	double above;  //梯形的上底
	double bottom; //梯形的下底
	double height;// 梯形的高
	double getArea() {
	return (above+bottom)*height/2;
	}
}
public class Example4_5 {
	public static void main(String[] args) {
		Rect ractangle=new Rect();
		ractangle.width=109.87;
		ractangle.height=25.18;
		double area=ractangle.getArea();
		System.out.println("矩形的面积:"+area);
		Lader lader=new Lader();
		lader.above=10.798;
		lader.bottom=156.65;
		lader.height=18.12;
		area=lader.getArea();
		System.out.println("梯形的面积:"+area);
	}
}

14、参数传值

package Example4_6;
class Computer{
	int add(int x,int y) {
		return x+y;
	}
}
public class Example4_6 {
	public static void main(String[] args) {
		Computer com=new Computer();
		int m=100;
		int n=200;
		int result=com.add(m, n);         //将m,n的值传值给参数,x,y
		System.out.println(result);
		result=com.add(120+m,n*10+8);
		System.out.println(result);
	}

}

15、引用类型的参数传值

package Example4_7;
class Battery{
	int electricityAmount;
	Battery(int amount){
		electricityAmount=amount;
	}
}
class Radio{
	void openRadio(Battery battery) {
		battery.electricityAmount=battery.electricityAmount-10;
	}
}
public class Example4_7 {
	public static void main(String[] args) {
		Battery nanfu=new Battery(100);
        System.out.println("南孚电池的储存量:"+nanfu.electricityAmount);
        Radio radio=new Radio();
        System.out.println("收音机开始使用南孚电池:");
        radio.openRadio(nanfu);
        System.out.println("目前南孚电池的储存量:"+nanfu.electricityAmount);
	}

}

代码调试过程中的问题

不熟悉代码原理和定义概念,不能很好的掌握

参考资料

《JAVA实用教材(第五版)》

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值