Java 第八讲 笔记:封装、代码块、修饰符、static关键字

一、package和import语句

1、package

1.1、package

格式: package com.bw; 
//该文件中所有的.java文件位于[项目名称\com\bw]目录下

1.2、JDK中主要的包

Java.lang:包含一些Java语言的核心类,如:String、Math、Integer、System和Thread,提供常用功能
java.awt:包含了构成抽象窗口工具集的多个类,这些类被用来构建和管理应用程序的图形用户界面(GUI)
java.net:包含执行与网络相关的操作类
java.io:包含能提供多种输入/输出功能的类
java.util:包含一些使用工具类,如:使用与日期相关的函数

2、import

2.1、import

格式:import java.util.*;

ps:
1、java.lang中的类可以直接使用,无需导入。
2、访问位于同一个包中的类则不需要引入。

二、static关键字

用static关键字声明的方法叫做静态方法,在静态方法中,不可以使用非静态的成员。

在这里插入图片描述在使用静态变量/方法时,可以通过类名访问,而无需实例化。

public class Book {
	public static String title = "三国演义"; //静态变量
	public static void show(){ //静态方法
		System.out.println(Book.title);
	}
}
public static void main(String[] args) {
		System.out.println(Book.title); //调用静态变量
		Book.show(); //调用静态方法
	}

静态方法和实例方法的特点:

在这里插入图片描述

三、封装

1、封装特点

Java提供了setter和getter方法。

  • 把类的属性隐藏,提供公共方法对其访问
  • 提高了代码的复用性
  • 提高了代码的安全性
public class ExpressPerson { //快递员
	private String no; //员工编号
	private String name; //员工姓名
	private int salary; //员工薪资
	
	public ExpressPerson(){ //这是一个无参的构造方法
//		System.out.println("这是一个无参的构造方法");
		this.no = "10086";
		this.name = "张三";
		this.salary = 1;
	}
	
	public ExpressPerson(String no,String name,int salary){
		this.no = no;
		this.name = name;
		this.salary = salary;
	}
	
	public void setNo(String no){
		this.no = no;
	}
	public String getNo(){
		return this.no;
	}
	
	public void setName(String name){
		this.name = name;
	}
	public String getName(){
		return name;
	}
	
	public void setSalary(int Salary){
		this.salary = Salary;	
	}
	public int gatSalary(){
		return salary;
	}
}

2、修饰符

在这里插入图片描述

四、代码块

在这里插入图片描述

public class Cat {
	static{
		System.out.println("这是一个静态代码块");
	}
	
	{
		System.out.println("这是一个构造代码块");
	}
	
	private String name;
	private int age;
	private String color;
	
	public Cat(String name,int age,String color){
		this.name = name;
		this.age = age;
		this.color = color;
	}
	
	public void setName(String name){
		this.name = name;
	}
	public String getName(){
		return this.name;
	}
	
	public void setAge(int age){
		this.age = age;
	}
	public int getAge(){
		return this.age;
	}
	
	public void setColor(String color){
		this.color = color;
	}
	public String getColor(){
		return this.color;
	}
	
	
	public void show(){
		{
			System.out.println("这是一个普通代码块");
		}
		System.out.println("名字:"+this.name+" 年龄:"+this.age+"岁 颜色:"+this.color);
	}
	
	public void com(Cat xiaoHua,Cat xiaoBai){
		System.out.println("请输入猫的名字:");
//		Scanner sc = new Scanner(System.in);
//		String name = sc.next();
		String name = new Scanner(System.in).next();
		if(xiaoHua.name.equals(name)){
			xiaoHua.show();
		}else if(xiaoBai.name.equals(name)){
			xiaoBai.show();
		}else{
			System.out.println("张老太没有这只猫!!!");
		}
	}
}

public class Test {

	public static void main(String[] args) {
		Cat xiaoHua = new Cat("小花",3,"白色");
		Cat xiaoBai = new Cat("小白",3,"花色");
		xiaoHua.show();
		xiaoBai.show();
		xiaoHua.com(xiaoHua, xiaoBai);
	}

}
这是一个静态代码块
这是一个构造代码块
这是一个构造代码块
这是一个普通代码块
名字:小花 年龄:3岁 颜色:白色
这是一个普通代码块
名字:小白 年龄:3岁 颜色:花色
请输入猫的名字:
小花
这是一个普通代码块
名字:小花 年龄:3岁 颜色:白色
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值