Java_ 5、面向对象



类与方法

https://blog.csdn.net/lucky534528795/article/details/89042910

变量

https://blog.csdn.net/lucky534528795/article/details/89042888



一、面向对象概述

1、main() 方法

main()是JAVA应用程序的执行入口;

是一个静态方法,一个类最多只能有一个main();

main()的执行是在类加载之后进行,此时不存在任何对象。只有在执行main()之后,才创建所需要的对象;

每一个类都可以有一个main(),这是对类进行单元测试的一个很方便的技巧


2、static块

static块会在类被加载的时候执行且仅会被执行一次,一般用来初始化静态变量和调用静态方法

//类的定义
class Person{
     String name;
     public Person(String name){
              this.name=name;
     }
    //静态块
    static{  
         System.out.println("static语句块执行");  
    }  
}

//测试代码
public class Test {
    public static void main(String[] args) {
          Person p1=new Person("张三" );
          Person p2=new Person("李四" );
          Person p3=new Person("王五" );   
    }
}
/*
不管构建多少次Person类的对象实例,static{}都会被执行且只执行一次。
所以只会输出一次“static语句块被执行” */

当一个类中有多个static{ }时,执行完所有static{}语句块的内容,才会执行其他调用语句



二、使用面向对象

信息的隐藏和封装

通常将类的成员变量设置成private型,再由public的设置器和访问器来对private变量进行访问


设置器、访问器

隐藏的信息常常通过设置器和访问器进行设值和访问

//访问器:get开头的方法,如
public String getName() {
    return name;
}

//设置器:set开头的方法,如
public void setName(String n){
        name = n;
}//注:若形参名和成员变量名相同,变量名前要以this修饰



使用eclipse自动生成设置器和访问器

依次单击“Source”>> “Generate Getters and Setters…”,然后在打开的对话框中选择相应的属性进行创建即可

设置器
void setName(String name){ //方法为void型,无返回值
	this.name = name; 
}
访问器
public String getName(){ //方法返回值为变量的数据类型
	return name;
}
构造器(构造方法)

构造方法会在对象实例化时被调用

作用是对创建的新对象进行初始化工作

每个类必须至少有一个构造方法(,系统会自带一个无参的构造方法)

//构造方法定义格式:
[访问修饰符] 类名([参数1][,参数2][,参数n]){
    属性1= 参数1;
        属性2 = 参数2;
        ……
        属性n = 参数n;
}

//如
public 类名( 形参列表 ){
	this.name = name;
	.....
}

在一个类中,如果没有构造方法,系统将会自动提供一个空的构造方法,以构造类的对象

相反,若已经有了构造器,系统就不再提供一个空的构造方法



三、软件设计阶段的类图

在这里插入图片描述

类名:Student

+:表公有public

-:表私有private

#:表保护protect

前面无符号:缺省

‘:’后表示数据类型/函数的返回值类型


多个类的箭头表继承,由子类指向父类

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值