자바 클래스 와 대상 에 대한 상세 한 소개
대상 을 대상 으로 디자인 하여 중요 한 경험 을 파악 한다.누가 데 이 터 를 가지 고 있 는 지,누가 대외 적 으로 이런 데 이 터 를 조작 하 는 방법(개인)을 제공 하 는 지!(수 동적 인 쪽 은 데이터 의 소유자 이 고 주동 적 인 쪽 은 집행자 이다)
개발 시:대상 을 찾 고 대상 을 만 들 고 대상 을 사용 하 며 대상 간 의 관 계 를 유지 합 니 다.
요약:대상 을 대상 으로 하 는 것 은 코드(클래스)로 객관 세계 의 사물 을 묘사 하 는 방식 이다.한 가지 유형 은 주로 한 사물 의 속성 과 행 위 를 포함한다.
클래스 와 클래스 의 예화
클래스 는 하나의 대상 의 통칭 이다.대상 은 바로 이러한 구체 화 된 실례 이다
하나의 종 류 는 무수 한 대상 을 실례 화 할 수 있다.
다음 에 우 리 는 하나의 예 를 통 해 클래스 와 클래스 의 실례 화 를 이해한다.
class Person {
public int age;//
public String name;
public static String sex; //
public void eat() {//
System.out.println(" !");
}
public void sleep() {
System.out.println(" !");
}
public static void func(){
System.out.println(" ");
}
}
public class Main{
public static void main(String[] args) {
Person person = new Person();// new
person.eat();//
person.sleep();
//
Person person2 = new Person();
Person person3 = new Person();
//
System.out.println(Person.sex);
Person.func();
}
}
구성원 변수:클래스 의 내부,방법의 외부 에 정의
대상 참조 로 접근
초기 화 되 지 않 았 다 면 기본 값(기본 0 값)입 니 다.
byte
short
int
long
float
double
char
boolean
0
0
0
0L
0.0f
0.0
16 진법
false
행동/방법:
[eat()sleep()]인 스 턴 스 멤버 방법
func()정적 구성원 방법
정적 인 구성원 변수 와 구성원 방법 에 대해 어떻게 접근 해 야 합 니까?
여기 서 볼 수 있 습 니 다.정적 인 것 에 대해 서 는 예화 대상 이 필요 없습니다!!!
직접 호출
클래스 이름.정적 구성원 변수/정적 구성원 방법
요약 static:
구성원 변 수 를 초기 화 하 는 방식
1.현지에서 초기 화(클래스 내 공격 초기 화)
2.기본 초기 화
3.클래스 외 초기 화(많이 사용)
public class Main{
public static void main(String[] args) {
Person person1 = new Person();
person1.name = " ";
person1.age = 20;
Person person2 = new Person();
person2.name = " ";
person2.age = 40;
}
}
포장 하 다우리 가 코드 를 쓸 때 항상 두 가지 역할 과 관련된다.클래스 의 실현 자 와 클래스 의 호출 자 이다.패키지 의 본질은 클래스 의 호출 자가 클래스 의 실현 자가 어떻게 클래스 를 실현 하 는 지 너무 많이 이해 하지 않 고 클래스 를 어떻게 사용 하 는 지 알 기만 하면 된다.
이렇게 하면 사용자 의 학습 과 사용 원 가 를 낮 추고 복잡 도 를 낮 출 수 있다.
private/public 두 키 워드 는"접근 권한 제어"를 표시 합 니 다.
예 를 들다
class Person {
private String name = " ";
private int age = 18;
public void show() {
System.out.println(" " + name + ", " + age + " ");
}
}
class Test {
public static void main(String[] args) {
Person person = new Person();
person.show();
}
}
getter:속성 값 을 얻 는 방법
setter:속성 값 을 수정 하 는 방법
우 리 는 이 두 가지 방법 으로 클래스 의 속성 을 밀봉 하여 속성 에 접근 하 는 목적 을 달성 합 니 다.
class Person {
private String name;//
private int age;
public void setName(String name){
//name = name;//
this.name = name;//this ,
}
public String getName(){
return name;
}
public void show(){
System.out.println("name: "+name+" age: "+age);
}
}
class Main {
public static void main(String[] args) {
Person person = new Person();
person.setName("caocao");
String name = person.getName();
System.out.println(name);
person.show();
}
}
this 키워드저희 가 아까 코드 에서 setter 방법 을 볼 수 있어 요.
private String name;
public void setName(String name){
//name = name;//
this.name = name;//this ,
}
this 는 현재 대상 의 인용 을 나타 내 며,this 를 통 해 대상 의 필드 와 방법 을 방문 할 수 있 습 니 다.세 가지 용법:
구조 방법 은 키워드 new 를 사용 하여 새로운 대상 을 예화 할 때 자동 으로 호출 되 어 초기 화 작업 을 완성 하 는 특수 한 방법 입 니 다.
대상 을 실례 화하 다.
Student stu = new Student() ;//대상 을 예화 하 다.
두 걸음
문법 규칙
class Person {
private String name;//
private int age;
private String sex;
//
public Person() {
this.name = "caocao";
this.age = 10;
this.sex = " ";
}
// 3
public Person(String name,int age,String sex) {
this.name = name;
this.age = age;
this.sex = sex;
}
public void show(){
System.out.println("name: "+name+" age: "+age+" sex: "+sex);
}
}
public class Main{
public static void main(String[] args) {
Person p1 = new Person();//
p1.show();
Person p2 = new Person("zhangfei",80," ");// 3
p2.show();
}
}
toString 방법
Person person = new Person("caocao",19);
System.out.println(person);
인용 을 인쇄 하면 toString 방법 을 기본적으로 호출 하여 다음 결 과 를 실행 합 니 다.원 하 는 결 과 를 인쇄 하기 위해 toString 방법 을 다시 쓸 수 있 습 니 다.
예 를 들 면:
class Person {
private String name;
private int age;
public Person(String name,int age) {
this.age = age;
this.name = name;
}
public void show() {
System.out.println("name:"+name+" " + "age:"+age);
}
// Object toString
@Override
public String toString() {
return "Person{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
}
public class Main {
public static void main(String[] args) {
Person person = new Person("caocao",19);
person.show();
System.out.println(person);
}
}
이렇게 인쇄 인용 화 를 하면 원 하 는 내용 에 따라 출력 됩 니 다.
익명 개체
익명 은 이름 이 없 는 대상 일 뿐이다.
new Person("caocao",19).show();//
특징:대상 에 의존 하지 않 고 클래스 이름 만 통 해 속성 이나 방법 을 호출 할 수 있 습 니 다.부호 블록
public class Main{
public static void main(String[] args) {
{ // {} ,
int x = 10 ;
System.out.println("x1 = " +x);
}
int x = 100 ;
System.out.println("x2 = " +x);
}
}
정적 코드 블록:정적 구성원 속성 을 초기 화 하 는 데 사 용 됩 니 다.
//
static {
count = 10;//
System.out.println("I am static init()!");
}
인 스 턴 스 코드 블록:클래스 에 있 는 코드 블록 을 정의 합 니 다.구조 코드 블록 은 인 스 턴 스 구성원 변 수 를 초기 화 하 는 데 사 용 됩 니 다.
//
{
this.name = "bit";
this.age = 12;
this.sex = "man";
System.out.println("I am instance init()!");
}
실행 순서정적 코드 블록 인 스 턴 스 코드 블록 구조 방법
총결산
자바 의 클래스 와 대상 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 자바 류 와 대상 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 조회 하 시기 바 랍 니 다.앞으로 많은 응원 바 랍 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.