이 기사의 내용은 Java의 정적 수정 속성 분석(코드 예제)에 대한 내용입니다. 필요한 친구가 참고할 수 있기를 바랍니다.
static 키워드인데, 우리는 아직도 개발 중에 이 키워드를 꽤 많이 사용하고 있습니다. "Java 프로그래밍 생각"에 다음과 같은 구절이 있습니다.
static 메소드는 이것이 없는 메소드입니다. 비정적 메서드는 정적 메서드 내에서 호출할 수 없지만 그 반대의 경우도 가능합니다. 그리고 객체를 생성하지 않고 클래스 자체를 통해서만 정적 메서드를 호출할 수 있습니다. 이것이 실제로 정적 메서드의 주요 목적입니다.
static은 정적 변수, 정적 멤버, 정적 함수 등 널리 사용됩니다. 단일 열 모드를 사용할 때 사용합니다. 그리고 정적 데이터 멤버는 정적 저장 영역에 저장되며 한 번만 저장되므로 메모리를 절약할 수 있습니다.
정적 선언 속성
정적 멤버 변수 수정
클래스에서 필요할 때# 🎜🎜# , 이 속성이 모든 클래스에 공통적으로 필요하고 이 속성의 값이 동일해야 하는 것과 같습니다. 定义一个属性为公共的属性
Test.java
class Book{ // 设置一个默认的值 static String pub = "清华大学出版社"; // 用来和 static 作为对比 String description = "描述"; // Book 类正常的属性 private String title; private double price; // Book 的构造类 public Book(String title, double price) { this.title = title; this.price = price; } // 获取 Book 的信息 public void getInfo(){ System.out.println("图书名称:"+ this.title + ",价格为:"+ this.price + ",出版社为:"+ this.pub + ",描述 "+ this.description); } } public class Test { public static void main(String[] args) { // 实例化三个Book类 Book book1 = new Book("Android开发实战", 69.8); Book book2 = new Book("Java EE开发实战", 49.8); Book book3 = new Book("Java 开发教程", 79.8); // 在没有设置 pub 属性的情况下输出 book1.getInfo(); book2.getInfo(); book3.getInfo(); System.out.println("————————————————————无敌分割线————————————————————"); // 我们给 book1 设置一个 pub 属性 book1.pub = "中信出版社"; book1.description = "这本书很牛逼,看了你就知道"; book1.getInfo(); book2.getInfo(); book3.getInfo(); } }
콘솔 출력
图书名称:Android开发实战,价格为:69.8,出版社为:清华大学出版社,描述 描述 图书名称:Java EE开发实战,价格为:49.8,出版社为:清华大学出版社,描述 描述 图书名称:Java 开发教程,价格为:79.8,出版社为:清华大学出版社,描述 描述 ————————————————————无敌分割线———————————————————— 图书名称:Android开发实战,价格为:69.8,出版社为:中信出版社,描述 这本书很牛逼,看了你就知道 图书名称:Java EE开发实战,价格为:49.8,出版社为:中信出版社,描述 描述 图书名称:Java 开发教程,价格为:79.8,出版社为:中信出版社,描述 描述From Control You 스테이션의 출력 결과를 볼 수 있습니다:
public class Test { public static void main(String[] args) { // 实例化三个Book类 Book book1 = new Book("Android开发实战", 69.8); Book book2 = new Book("Java EE开发实战", 49.8); Book book3 = new Book("Java 开发教程", 79.8); // 在没有设置 pub 属性的情况下输出 book1.getInfo(); book2.getInfo(); book3.getInfo(); System.out.println("————————————————————无敌分割线————————————————————"); // 我们使用 Book 类直接调用pub Book.pub = "中信出版社"; book1.description = "这本书很牛逼,看了你就知道"; book1.getInfo(); book2.getInfo(); book3.getInfo(); } }클래스가 인스턴스화되지 않은 경우 정적 속성은
Test.java
class Book{ // 设置一个默认的值 static String pub = "清华大学出版社"; // 用来和 static 作为对比 String description = "描述"; // Book 类正常的属性 private String title; private double price; // Book 的构造类 public Book(String title, double price) { this.title = title; this.price = price; } // 获取 Book 的信息 public void getInfo(){ System.out.println("图书名称:"+ this.title + ",价格为:"+ this.price + ",出版社为:"+ this.pub + ",描述 "+ this.description); } } public class Test { public static void main(String[] args) { // 在没有实例化对象时,就调用 System.out.println(Book.pub); // 没事实例化对象的时候,去给static属性赋值上默认值 Book.pub = "北京大学出版社"; System.out.println(Book.pub); // 新建一个类,输入 pub 属性 Book book = new Book("Java", 88); book.getInfo(); } }# 🎜🎜# 콘솔 출력
清华大学出版社
北京大学出版社
图书名称:Java,价格为:88.0,出版社为:北京大学出版社,描述 描述
이를 통해 객체가 인스턴스화되지 않은 경우 클래스를 통해 정적 속성을 직접 제거할 수 있으며 정적 속성도 제거할 수 있음을 알 수 있습니다. 수정되었습니다. 정적 속성 선언은 클래스 구조에 있지만 개체에 의해 제어되지 않고 독립적으로 존재합니다.
정적 속성과 비정적 속성의 차이점
위 내용은 Java의 정적 수정 속성 분석(코드 예)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!