教材学习内容总结
- 类是组成JAVA源文件的基本元素,一个源文件由若干个类组成的
- 类体可以有两种重要的成员:成员变量和方法
- 成员变量分为实例变量和类变量。类变量被该类的所有对象继承,不同对象的实例变量互不相同。
- 除构造方法外。其他方法分为实例方法和类方法。类方法不仅可以由该类的对象调用,也可以由类名调用,而实例方法必须对象来调用。
- 实例方法既可以操作实例变量也可以操作类变量,当对象调用实例变量时,方法中的成员变量,其中的实例变量和其他对象的不相同,即占有不同的内存空间,而类变量和其他对象的相同,即占有相同的内存空间。类方法只能操作类变量,当对象调用类方法时,方法中的成员变量一定都是类变量,也就是说,该对象和所有的对象共享类变量。
- 通过对象的组合可以实现方法复用。
- 在编写Java源文件时,可以使用import引入有包名的类。
- 对象访问自己的变量以及调用方法受访问的权限
代码调试过程
例子4
package lwy;
import java.util.Scanner;
public class example {
public static void main(String args[]) {
Point p1,p2;
p1=new Point();
p2=new Point();
System.out.println("p1的引用"+p1);
System.out.println("p2的引用"+p2);
p1.setXY(1111, 2222);
p2.setXY(-100, -200);
System.out.println("p1的x,y坐标:"+p1.x+","+p1.y);
System.out.println("p2的x,y坐标:"+p2.x+","+p2.y);
p1=p2;
System.out.print("将p2的引用赋给p1后:");
System.out.println("p1的引用:"+p1);
System.out.println("p2的引用:"+p2);
System.out.println("p1的x,y坐标:"+p1.x+","+p1.y);
System.out.println("p2的x,y坐标:"+p2.x+","+p2.y);
}
}
class Point{
int x,y;
void setXY(int m,int n) {
x=m;
y=n;
}
}
例子5
package lwy;
import java.util.Scanner;
public class example {
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);
}
}
class Rect{
double width;
double height;
double getArea() {
double area=width*height;
return area;
}
}
class Lader{
double above;
double bottom;
double height;
double getArea() {
return (above+bottom)*height/2;
}
}
例子7
package lwy;
import java.util.Scanner;
public class example {
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);
}
}
class Battery{
int electricityAmount;
Battery(int amount){
electricityAmount=amount;
}
}
class Radio{
void openRadio(Battery battery) {
battery.electricityAmount=battery.electricityAmount-10;
}
}
例子8
package lwy;
import java.util.Scanner;
public class example {
public static void main(String args[]) {
Circle circle=new Circle();
circle.setRadius(10);
Circular circular=new Circular();
System.out.println("circle的引用:"+circle);
System.out.println("圆锥的bottom的引用:"+circular.bottom);
circular.setHeight(5);
circular.setBottom(circle);
System.out.println("circle的引用:"+circle);
System.out.println("圆锥bottom的引用:"+circular.bottom);
System.out.println("圆锥的体积:"+circular.getVolme());
System.out.println("修改circle的半径,bottom的半径同样变化");
circle.setRadius(20);
System.out.println("bottom的半径:"+circular.getBottomRadius());
System.out.println("重新建立circle,circle的引用将发生变化");
circle=new Circle();
System.out.println("circle的引用:"+circle);
System.out.println("但是不影响circular的bottom的引用");
System.out.println("圆锥的bottom的引用:"+circular.bottom);
}
}
class Circle{
double radius,area;
void setRadius(double r) {
radius=r;
}
double getRadius() {
return radius;
}
double getArea() {
area=3.14*radius*radius;
return area;
}
}
class Circular{
Circle bottom;
double height;
void setBottom(Circle c) {
bottom=c;
}
void setHeight(double h) {
height=h;
}
double getVolme() {
if(bottom==null)
return -1;
else
return bottom.getArea()*height/3.0;
}
double getBottomRadius() {
return bottom.getRadius();
}
public void setBottomRadius(double r) {
bottom.setRadius(r);
}
}
其他(感悟)
Java是灵活多变,兼容性强的一门语言,整合了其他语言的一些使用方法,而且摒弃了一些复杂难懂,且实用性不高的一些应用,以更加简便的方式完成程序的任务,应用Java语言对web开发有很强的实用性,我们需要不断的学习,不断地掌握Java语言的使用方法,以便于之后结合数据库系统进行软件程序的开发,学习Java的过程中可能会有些枯燥,但只有认真去学,弄清楚每一个点,多上机编程,多模仿优秀代码自行编程,才能学会如何去用编程语言解决自己想要完成的任务。
参考资料
《Java 2实用教程》第五版
CSDN编程社交网站