java--------private私有化、封装

day7

1. 绘制窗体

JFrame:

import javax.swing.JFrame;

public class Test {
	public static void main(String[] args){
		// 创建对象
		JFrame frame = new JFrame();
        // 设置窗体的大小
        frame.setSize(231,897);
        // 设置窗体可见
        frame.setVisiable(true);
	}
}

2. 类和对象

万物皆对象。

3. 面向对象的思想介绍

从执行者的位置变成指挥者,

4. 对象的内存图

  • 单个对象内存图

  • 两个对象内存图

  • 两个引用指向相同对象内存图

5. 成员变量和局部变量的区别

**成员变量:**方法外,有默认初始化值,属于堆内存,它随着对象的创建而存在,随着对象的消失而消失

**局部变量:**方法内,没有初始化值,属于栈内存,它随着方法的调用而存在,随着方法的弹栈而消失

即类中编写位置不同,初始化值不同,内存所属不同,生命周期不同,都在所属的大括号中有效

6. this关键字

this用于区分成员变量和局部变量

public class Student {
		//成员变量name、age
	String name;
	int age;
	public student(){
	
	}
	
	public Student2(String name, int age) {
		//this关键字,局部变量赋值给成员变量
        this.name = name;
        this.age = age;
	}

}

7. 构造方法

  • 构造方法 (构造器)

    • 构建、创造一个对象的时候,所调用的方法
  • 构造方法的作用 :

    格式:

    • 方法名与类名相同,大小写也必须一致;
    • 没有返回值类型;
    • 没有具体的返回值(不能通过return语句带回结果)
  • 构造方法的执行时机:

    • 在创建对象的时候,被系统自动调用执行,每创建一次对象,就会执行一次构造方法
    • 构造方法不允许手动调用.
public class Student {
  	String name;
  	int age;
  
  	public Student(String name, int age){
  		this.name = name;
  		this.age = age;
  	}
  }
  • 注意事项:

    • 如果一个类中没有写出任何构造方法,系统将会提供【默认的】【无参数的】构造方法
    • 如果手动编写了构造方法,系统将不会再提供那个默认的无参构造了
      • 建议:今后编写类的时候【空参】【带参】构造方法都手动给出.

8. 封装

  • 面向对象分为三大特征

    1. 封装
    2. 继承
    3. 多态

    如:
    1.将属性抽取到类中,

      用户信息:
      	
      	id   name    age    tel   address
    
      	1   隔壁老王   34    123     香港
      	2   隔壁老张   24    456     北京
    
  class User {
 
  	String id;
      String name;
      int age;
      String tel;
      String address;
  }
  
  User u = new User("1","隔壁老王",34"123","香港");
  1. 将代码功能抽取到方法中,这是对功能进行的封装
public static int getMax(int[] arr){
	for(int i = 1; i < arr.length; i++){
		if(arr[i] > max){
			max = arr[i];
		}
	}
	return max;
}

9. private关键字

**private:**权限修饰符,私有化,只能在本类中进行访问

**default:**本类中,同一个包下(默认的)

protected

**public :**可以在任意位置访问

10.标准 JavaBean 类的编写和使用

  • 成员变量全部私有化
  • 空参、带参构造方法
  • 对私有的成员变量,setXxx和getXxx方法

11. static关键字(静态)

  • 被static修饰的成员(变量,方法)多了一种调用方法
    • 可以通过类名直接调用
public class Student {
	static int num = 1;
}

System.out.println(Student.num);

在静态的方法中, 只能访问静态的成员 静态只能访问静态

12.窗体的绘制

package day7;

import javax.swing.*;

public class Demo1JFrame {
    public static void main(String[] args) {
        // 1. 召唤精灵
        JFrame frame = new JFrame();
        // 2. 设置窗体大小
        frame.setSize(345,789);
        // 3. 设置窗体居中
        frame.setLocationRelativeTo(null);
        // 4. 设置窗体置顶
        frame.setAlwaysOnTop(true);
        // 5. 设置窗体关闭模式
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        // 6. 设置窗体标题
        frame.setTitle("王者荣耀单机版");
        //  设置窗体可见
        frame.setVisible(true);
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

清淡的粥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值