Java语言程序(三)

过程

面向过程的编程思想:以方法(函数)为基本元素,数据都是通过形参传入,方法通过形参接受实参,完成相关处理。
缺点:方法和传入的实参变量没有稳定的结合关系。

对象

类:面向对象的一个重要思想就是通过抽象得到类,即将数据和操作这些数据的方法封装在一个类中。抽象的内容有两个:一是成员变量,即数据;二是方法,即数据上的操作。
优点:成员方法处理的数据变量不是通过形参传入,而是直接访问类中的成员变量,增加了变量和处理这些变量的方法的黏性。

Java程序结构

类定义的语法格式:
一个Java应用程序可以有多个包,每个包中可以有多个Java源文件,
每个源文件可以有多个类,每个类编译后产生一个类的字节码文件。

一个Java应用程序至少有一个主类,每个Java源文件中都可以有一个主类。Java应用程序总是从主类的main方法开始执行。

//定义成员变量(属性)
访问控制符 [修饰符] class 类名标识符{
	访问控制符 [修饰符] 数据类型 成员变量1;
	访问控制符 [修饰符] 数据类型 成员变量2;
	...
	访问控制符 [修饰符] 数据类型 成员变量n;
	//定义成员方法(行为)
	访问控制符 [修饰符] 返回值的数据类型 方法名称(参数1,参数2...){
		代码块
		[return 返回值;]
	}
}
/*传统的程序设计主要采用结构化的程序设计方法,也就是面向过程程序设计。*/
public class guocheng {
    public static double getBoxVolume(double lenght,double width,double height){
        return lenght*width*height;
    }
    public static void mian(String[] args){
        double len,wid,hei;
        len=10;wid=20;hei=30;
        double volume=j42.getBoxVolume(len,wid,hei);
        System.out.printf("长%.2f,宽%.2f,高.%2f,的长方体体积为.%2f\n",len,wid,hei,volume);
    }
}
//面向对象的一个重要思想就是通过抽象得到类,即将数据和操作这些数据的方法封装在一个类中。
//通过对长方体的观察做出以下抽象,成员变量有长、宽、高,方法有计算长方体体积,根据上述抽象,编写出如下Box长方体类。
class Box{
    double lenght;
    double width;
    double height;
    public double getBoxVolume(){
        return lenght*width*height;
    }
}
public class duixiang {
    public static void main(String[] args){
        Box b=new Box();
        b.width=10;b.height=20;b.height=30;
        double volume=b.getBoxVolume();
        System.out.printf("长%.2f,宽%.2f,高%.2f的长方体体积为%.2f\n",b.lenght,b.width,b.height,volume);
    }
}

类、对象和构造方法

类中包含两部分:成员变量和成员方法。
成员变量:是类的属性,反映了对象的静态特性。
成员方法:是类的行为,反映了类的动态特性。

创建对象

创建对象的语法格式:

//格式一:
类名 对象名[=null];
对象名=new 类名();
//格式二:
类名 对象名=new 类名();

成员变量的默认值

在类创建对象时,编译器会为对象的各类型的成员给一个默认值,无论是基础数据类型还是引用数据类型,对按下表列出的规则自动赋默认值。

序号类成员变量数据类型默认值
1byte0
2short0
3int0
4long0L
5float0.0F
6double0.0D
7char'\u0000’空
8booleanfalse
9引用数据类型null

构造方法

  1. 构造方法是一种特殊方法,构造方法的名字必须与它所在的类的名称完全相同。
  2. 构造方法没有返回类型。
  3. 对象不可以显示调用构造方法,构造方法是专门在创建对象时使用的。
public class dingyi {
    public static void main(String[] args){
        学生类 s=new 学生类();//创建类
        System.out.println(args.toString());//调用成员
        矩形类 rect=new 矩形类();
        System.out.println(rect.getDia());
    }
}
//定义类
class 学生类{//类头
    //类体
    private String 学号="12345678";//成员变量赋值
    public String 姓名="王刚";
    protected  char 性别='男';
    int 年龄=21;
    final String 专业="计算机";
    public static int 学生对象个数=0;
    public String toString(){
        return "学号="+学号+"\n姓名="+姓名+
                "\n性别="+性别+"\n年龄="+年龄+
                "\n专业="+专业;
    }
}
class 矩形类{
    private double length;
    private double width;

    public double getArea() {
        return length*width;
    }
    public double getDia(){
        return (length+width)*2;
    }
}
  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值