C# 학습일기 20----정적 정적 변수 및 상수
이전 글 Delegate(Delegate) Type에서는 public 메소드를 정의할 때 static 키워드를 사용했는데, 이로 인해 object.method 이름을 통해 이 메소드에 접근할 수 없게 되었습니다. 이번 글에서는 static static에 대해 자세히 알아보겠습니다. 변수.
변수:
정적 변수를 배우기 전에 변수의 의미를 이해해야 합니다. 프로그램은 데이터를 읽고 쓰고 계산하는 등의 작업을 수행해야 합니다. 특정 값이나 결과를 저장해야 하는 경우 사용자 관점에서 변수는 정보를 설명하는 데 사용되는 이름입니다. 각 변수는 컴퓨터 관점에서 사람 이름, 티켓 가격 등과 같은 다양한 유형의 정보를 저장할 수 있으며, 변수는 저장 주소, 변수 유형 및 값 유형을 나타냅니다. 변수에 저장됩니다. 변수를 사용할 때 중요한 원칙은 변수를 먼저 정의한 후 사용해야 한다는 것입니다.
C#의 변수 정의 및 사용 규칙은 C/C++의 변수 정의와 사용 규칙이 유사하므로 여기서는 자세히 설명하지 않겠습니다(그래서 C를 잘 배우는 것이 꽤 중요합니다^_^)
정적 정적 변수:
static 수식어로 선언된 변수를 정적 변수라고 합니다. 해당 정적 변수가 속한 클래스는 한 번 로드되면 해당 클래스가 끝날 때까지 존재합니다. 클래스가 포함된 프로그램입니다. static에는 두 가지 주요 속성이 있습니다.
1. Hidden:
클래스에 정의된 정적 메서드나 정적 변수는 해당 클래스의 객체가 아니라 클래스 자체에 속합니다. 정적으로 정의된 메서드를 호출하려면 해당 메서드 앞에 클래스 이름이 와야 합니다. (퍼블릭 액세스 수정도 작동하지 않으므로 이전 기사의 끝 부분에서 설명합니다.) 인스턴스 메서드는 클래스의 인스턴스를 통해 사용해야 합니다. 인스턴스 메서드는 클래스의 정적 멤버뿐만 아니라 클래스의 비정적 멤버도 사용할 수 있습니다.
액세스 규칙:
정적 메서드는 클래스의 정적 멤버에만 액세스할 수 있으며 클래스의 비정적 멤버에는 액세스할 수 없습니다.
비정적 메서드는 클래스의 정적 멤버에 액세스할 수 있습니다. 비정적 멤버에도 액세스할 수 있습니다.
정적 메서드는 인스턴스를 사용하여 호출할 수 없으며 클래스 이름을 통해서만 호출할 수 있습니다.
예를 들어 다음 예에서는
class person { public static int i; //定义一个静态变量i 默认值是0 public int k=0; //定义一个非静态变量 k; public static int sbu() // 定义一个静态方法 { i = 9; //成功对静态变量赋值 k = 5; //出错了,无法访问非静态变量 return k; //综上静态方法只能访问静态变量 } public int Add() //定义一个实例方法 { i = 9; //对静态变量赋值没有问题 k = 5; //对非静态变量赋值也没问题 return i; //综上实例方法能够访问所有类型变量 } }
메서드에 액세스하기 위해 사람과 개체를 인스턴스화합니다.
static void Main(string[] args) { person per = new person(); //实例化一个对象per int i = per.i; //出错了,per访问不了类里的静态变量 int k = per.k; //没有问题 per.sbu(); //出错了,per访问不了静态方法 person.sbu(); //成功调用 per.Add(); //成功调用 person.Add(); //出错了,person访问不了实例方法 }
2. 변수 내용을 지속적으로 유지합니다.
정적 데이터 영역에 저장된 변수는 프로그램이 실행되기 시작할 때 초기화되며, 이 시간에만 초기화됩니다. 정적 저장 영역에는 전역 변수와 정적 변수라는 두 가지 유형의 변수가 저장됩니다. 그러나 전역 변수에 비해 static은 변수의 가시 범위를 제어할 수 있습니다.
예제를 작성해 보면 알 수 있습니다(이번에는 C++로 작성했습니다). C#에서는 메서드에서 정적 사용을 허용하지 않습니다.
#include<iostream> using namespace std; int main() { for (int i=0;i<4;i++) { static int k =0; //定义一个静态变量并赋值为0 k++; cout<<k<<endl; //输出 } return 0; }
결과:
위 코드에서 static을 제거하면 k=0;은 비정적 변수가 되고 결과에는 숫자 1만 나타납니다. 🎜>
상수:
상수는 품질이 고정된 양입니다. 데이터 유형의 관점에서 상수 유형은 모든 값 유형 또는 참조 유형이 될 수 있습니다. 상수 선언이란 프로그램에서 사용할 상수 이름과 그 값을 선언하는 것입니다. (사용법도 C와 비슷합니다.) 그런데 C#에서는 상수를 한번 정의하면 그 값을 바꿀 수 없습니다
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace demo { class Program { const int S = 9; // 定义一个常量S并赋值 static void Main(string[] args) { S += 4; //出错了,常量一旦定义就不能改变常量的值 Console.WriteLine(S); } } }
위는 C# 학습일기 20의 내용입니다------정적 정적 변수와 상수, 관련 내용 등 PHP 중국어 홈페이지(www.php.cn)를 주목해주세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











PHP 함수의 정적 변수 메커니즘을 사용하면 변수가 함수 호출 간에 값을 유지할 수 있으므로 다음과 같은 기능을 수행할 수 있습니다. 함수 호출 간에 상태를 유지합니다. 중복된 변수를 생성하지 마세요. 코드를 단순화하세요.

C 언어에서 정적의 역할 및 사용법: 1. 변수 범위, 3. 내부 함수, 5. 함수 수정, 1. 변수 범위, 변수 앞에 static 키워드가 있는 경우 변수의 범위는 변수가 선언된 파일로 제한됩니다. 즉, 변수는 "파일 수준 범위"이므로 " 중복 정의" 변수 문제 2. 수명주기, 정적 변수는 프로그램 실행을 시작할 때 한 번 초기화되고 프로그램이 끝나면 소멸됩니다.

1. static 먼저 다음 프로그램을 살펴보십시오. publicclassHello{publicstaticvoidmain(String[]args){//(1)System.out.println("Hello, world!");//(2)}} 이것을 보았습니다. 세그먼트 프로그램은 Java를 공부한 대부분의 사람들에게 친숙합니다. Java를 배우지 않았지만 C 등 다른 고급 언어를 배웠더라도 이 코드의 의미를 이해할 수 있어야 합니다. 단순히 "Hello, world"를 출력하고 다른 용도는 없습니다. 그러나 정적 키워드의 주요 목적을 보여줍니다.

C 언어 static 키워드의 실제 응용 시나리오 및 활용 기술 1. 개요 static은 C 언어에서 변수와 함수를 수정하는 데 사용되는 키워드입니다. 그 기능은 프로그램 실행 중에 수명 주기와 가시성을 변경하여 변수와 함수를 정적으로 만드는 것입니다. 이 기사에서는 static 키워드의 실제 응용 시나리오와 사용 기술을 소개하고 구체적인 코드 예제를 통해 설명합니다. 2. 정적 변수는 변수의 수명 주기를 연장합니다. static 키워드를 사용하여 지역 변수를 수정하면 수명 주기가 연장됩니다.

정적 기능: 1. 변수 3. 클래스 4. 기타 용도 6. 싱글톤 모드 9. 로컬 변수 메모리 레이아웃 최적화; 11. 반복적인 초기화를 피하십시오. 12. 함수에 사용하십시오. 자세한 소개: 1. 변수, 정적 변수. 변수가 정적으로 선언되면 인스턴스 수준이 아닌 클래스 수준에 속합니다. 즉, 개체 수에 관계없이 정적 변수는 하나만 존재하며 모든 개체가 존재합니다. 이 정적 변수 등을 공유하십시오.

Modifier abstract (추상) 1. Abstract는 클래스를 수정할 수 있습니다. (1) abstract로 수정한 클래스를 추상 클래스라고 합니다. (2) 문법: abstractclass 클래스 이름 {} (3) 특징: 추상 클래스는 객체를 별도로 생성할 수는 없지만 객체를 생성할 수는 있습니다. 선언됨 추상 클래스 클래스 이름 참조 이름; (4) 추상 클래스는 멤버 변수 및 멤버 메소드를 정의할 수 있습니다. (5) 추상 클래스에는 생성자가 있습니다. 하위 클래스 객체를 생성하는 데 사용되면 jvm은 기본적으로 상위 클래스 객체를 생성합니다. 적용 jvm이 상위 클래스 객체를 생성할 때 적용됩니다. 2. Abstract는 메서드를 수정할 수 있습니다. (1) asbtract로 수정된 메서드를 추상 메서드라고 합니다. (2) 구문: 액세스 한정자 추상 반환 값

Springboot는 pro 파일을 읽고 정적 정적 변수 mailConfig.properties#Server mail.host=smtp.qq.com#포트 번호 mail.port=587#이메일 계정 mail.userName=hzy_daybreak_lc@foxmail.com#이메일 인증 코드 메일을 주입합니다. passWord =vxbkycyjkceocbdc#시간 지연 mail.timeout=25000#Sender mail.emailForm=hzy_daybreak_lc@foxmail.com#Sender mai

PHP 정적 정적 메서드의 "정적"은 클래스를 인스턴스화하지 않고도 이러한 속성과 메서드를 직접 호출할 수 있음을 의미합니다. static은 클래스의 속성과 메서드를 수정하는 데 사용되는 키워드이며 사용 구문은 "class Foo { 공개 정적 $my_static = 'hello';}".
