前言
提示:提以下是本篇文章正文内容,有关this关键字、static关键字、代码块、包还有访问权限修饰符的介绍。下面案例可供参考
一、知识点
1.this关键字
this关键字就是一个引用,指当前对象(正在执行方法的对象)。你可以想象成是一个“ 指向自己的指针 ” ,比如,如果你说“ 我饿了 ”,这里的“ 我 ”就是指你自己。在Java中,如果你写this。hungry = true;那么this就指当前对象,hungry是这个对象的属性。
这是一个简单的示例:
public class Person{
String name;
int age;
public Person(String name,int age){
this.name=name;
this.age= age;
}
public void introduce(){
System.out.println("我的名字是:"+this.name +"我"+this.age+"岁了");
}
}
2.static关键字
在Java中,static关键字用于修饰类的成员变量和方法。通俗来讲,static关键字就像是我们共享的公共资源,大家都可以访问,而且不管你创建了多少个类的对象,这些公共资源都只有一份。
这是一个简单的示例:
public class 学校{
public static int 总学生人数=0//共享的静态变量
public static void 增加学生(){
总学生++;//通过类名直接访问静态变量
}
}
//使用静态方法不需要创建对象
学校.增加学生();
学校.增加学生();
学校.增加学生();
System.out.println(学校.总人数);//输出三
注意事项:静态方法不能直接访问类的非静态成员(实例变量和实例方法),因为静态方法在调用时可能还没有任何对象实例。
3.代码块
代码块指被大括号{}包围的一段代码。这些代码块可以在不同的上下文中使用,比如方法、循环、条件语句’类定义等地方。每个代码块可以包含一个或多个语句,并且可以嵌套使用。
1.方法代码块
最普通的代码块,位于一个方法的内部,每次调用这个方法时,方法代码块中的代码就会被执行。就像是做饭的食谱,每次按照食谱做菜时,都会按照步骤(代码块中的代码)进行。
public void myMethod(){
//方法代码块
System.out.println("hello");
}
2.同步代码块
特殊的代码块,用于多线程编程。它确保同一时间只有一个线程可以执行这个代码块中的代码。就像是一个人只能进去一个人的房间,确保房间里的事情(代码块中的代码)不会被多人同时干扰。
public void syMethod(){
//同步代码块
syMethod(this){
System.out.println("同步代码块");
}
}
3.静态代码块
类加载时执行,通常用于初始化静态变量,只执行一次。就像是学校的开学准备,只有在开学的时候(类加载的时候)做一次,比如准备教材。
static{
//静态代码块
System.out.println("静态代码块");
}
4.构造代码块
创建对象时执行,用于初始化实例变量。每次创建对象都会执行。就像是每天早上起床后例行公事,比如刷牙、洗脸。每次(创建对象)都会做。
{
//构造代码块
System.out.println("构造代码块");
}
4.包
1.包的作用
* 按照不同功能管理类
* 避免类重名
* 控制访问权限,在不同的包中,对不同权限的成员进行访问控制
2.包的命名
第一级 项目名称com org gov edu
第二级 gongsi名字 baidu sun huawei
第三级 项目名字 oa cms erp
第四级 功能模块 web service dao config
3.创建包
在Java文件的顶部使用package关键字来声明这个文件属于哪个包。
例如:
package com.example.myapp;
public class MyClass{
//类的内容
}
4.导入包
import com.example.myapp.MyClass;
public class Main{
public static void main(String[] args){
MyClass myObject = new MyClass();
}
}
5.访问权限修饰符
Java提供了四种访问权限修饰符:
public: (任何)公共权限。修饰类,成员变量,成员方法,内部类。
protect:(本包,同包的其他类,不同包的子类)受保护的。
default:(本包,同包的其他类)默认。
private: (本类)私有的。