包
包的概述和使用
其实就是文件夹
作用:对类进行分类管理
包的定义格式
带包的类编译
手动建包 --> javac 类名.java --> java com.itheima.包名(com和itheima文件夹要手动会创建,并且把.class文件放到itheima文件夹下)
自动建包 -->java -d . 包名.java --> java com.itheima.包名
前提 创建的程序里开头要加上 package com.itheima;
导包
导包的概述和使用
使用不同包下的类时,使用的时候要写类的全路径,写起来太麻烦了
为了简化带包的操作,Java就提供了导包的功能
导包的格式
修饰符
修饰符的分类
权限修饰符
修饰符 | 同一个类中 |
同一个包中子类无关类 |
不同包的子类 |
不同包的无关类 |
private | √ | |||
默认 | √ | √ | ||
protected | √ | √ | √ | |
public | √ | √ | √ | √ |
final修饰局部变量
package itheima_03; public class Student { public int age=20; }
package itheima_03; public class FinalDemo { public static void main(String[] args) { //final修饰基本类型变量 final int age=20; // age=10; System.out.println(age); //final修饰引用类型变量 final Student s=new Student(); s.age=100; System.out.println(s.age); // s=new Student(); } }
static
static关键字是静态的意思,可以修饰成员方法,成员方法
static修饰的特点
这也是我们判断是否使用静态关键字的条件
当然,也可以通过对象名调用
推荐使用类名调用
package itheima_04; public class Student { public String name; public int age; // public String university; public static String university; public void show(){ System.out.println(name+","+age+","+university); } }
package itheima_04; /* * 测试类 * */ public class StudentDemo { public static void main(String[] args) { Student.university="青岛大学"; Student s1=new Student(); s1.name="曹巧梦"; s1.age=30; // s1.university="青岛大学"; s1.show(); Student s2=new Student(); s2.name="方宾"; s2.age=33; // s2.university="青岛大学"; s2.show(); } }
static访问特点
非静态的成员方法
静态的成员方法
总结成一句话就是:静态成员方法只能访问静态成员
public class Studdent { //非静态成员变量 private String name="曹巧梦"; //静态成员变量 private static String university="青岛大学"; //非静态成员方法 public void show1(){} //非静态成员方法 public void show2(){ System.out.println(name); System.out.println(university); show1(); show3(); } //静态成员方法 public static void show3(){} //静态成员方法 public static void show4(){ // System.out.println(name); System.out.println(university); // show1(); show3(); } }
原文:https://www.cnblogs.com/fangbin-caoqiaomeng/p/14423907.html