java入门视频教学,java入门从哪里开始学

  java入门视频教学,java入门从哪里开始学

  静态关键字:定义一个类的时候,只是描述了某个事物的特征和行为,并不产生具体的数据。只有当类的实例对象被new关键字创建时,堆栈内存和内存才会被打开。当对象的属性保存在堆栈存储器中时,每个对象都有自己的属性。

  如果希望所有对象共享某些属性,必须将它们声明为静态属性。如果一个属性是用static关键字修饰的,那么这个属性可以用类名直接调用,static关键字也可以修饰成员方法。

  静态属性(Static attribute):如果在Java程序中使用Static来修饰一个属性,则称为静态属性(也称为全局属性),使用类名可以直接访问静态属性。

  格式如下:

  类名。属性名示例:

  班级学生1{

  字符串名称;

  int age

  学校=‘一所大学’;

  public student1(字符串名称,整数年龄){

  this.name=name

  this.age=年龄;

  }

  公共无效信息(){

  System.out.println(姓名: this.name 年龄: this.age 学校: school);

  }

  }公共类示例{

  公共静态void main(String[]args){

  Student1 stu1=新Student1(张三,10);

  Student1 stu2=新Student1(李四,20);

  Student1 stu3=新Student1(王五,18);

  stu 1 . info();

  stu 2 . info();

  stu 3 . info();

  }

  }输出:

  姓名:张三年龄:10学校:A大学

  姓名:李四年龄:20学校:A大学

  姓名:王武年龄:18学校:A大学在上面的例子中,三个学生都来自A大学。

  假设现在A大学需要改名为B大学,那就意味着该校所有学生的学校信息都要修改,显然非常麻烦。

  为了解决这个问题,我们可以使用static关键字来修改学校属性,使其成为公共属性。学校只会分配一个内存空间,由学生类的所有对象共享。一个对象只要修改一次,所有学生对象的学校属性值都会改变。

  修改如下:

  统计字符串school= a大学;1.stu= b大学;//只修改stu1对象的学校属性输出:

  //stu1/stu2/stu3对象的学校属性已经更改。

  姓名:张三年龄:10学校:B大学

  姓名:李四年龄:20学校:B大学

  姓名:王武年龄:18学校:B大学由此可以得出,static声明的属性是所有对象共有的。

  自始至终,学校属性的内存空间大小没有变化。

  静态方法:如果你想在一个类中使用一个成员方法,你需要首先实例化这个类。在实际开发中,开发人员有时希望不创建对象,直接通过类名调用方法。要达到这种效果,只需要在成员方法之前添加static关键字。用static关键字修饰的方法通常称为静态方法。

  像静态变量一样,静态方法可以通过类名和对象来访问。类名。方法/实例对象名。静态方法的方法使用:示例:

  课程示例{

  公共静态void main(String[]args){

  Student1 stu1=新Student1(张三,18);

  student1 stu2=新student1(jason ,19);

  Student1 stu3=新Student1(小明,20);

  stu 1 . setage(20);//最后,用20替换实例stu1的age属性

  Stu2.setName(小红);//最后用“小红”替换实例stu2的name属性

  //将所有实例的学校属性替换为B大学。因为它是用static声明的,所以可以用类名直接调用它。

  学生1。SetSchool(‘大学B’);

  stu 1 . info();

  stu 2 . info();

  stu 3 . info();

  }

  }班级学生1{

  私有字符串名称;

  私人年龄;

  私立静弦学校=某大学;

  public student1(字符串名称,整数年龄){

  this.name=name

  this.age=年龄;

  }

  公共无效信息(){

  System.out.println(姓名: this.name ,年龄: this.age ,学校: school );

  }

  //封装student1类的所有属性,必须使用setter方法来改变属性。

  公共字符串getName(){

  返回名称;

  }

  public void setName(字符串名){

  this.name=name

  }

  public int getAge(){

  回归年龄;

  }

  公共无效存储(整数){

  this.age=年龄;

  }

  公共静态字符串getSchool(){

  返校;

  }

  public static void set school(String school){

  student 1 . school=学校;

  }

  }输出:

  姓名:张三,年龄:20,学校:B大学

  姓名:小红,年龄:19岁,学校:B大学

  姓名:小明,年龄:20,学校:B大学静态方法只能访问静态成员,因为非静态成员需要创建对象才能访问,也就是随着对象的创建,非静态成员会分配内存,而静态方法不需要创建任何对象就可以调用。

  静态代码块:在Java类中,用Static关键字修饰的代码块称为静态代码块。当由类加载时,静态代码块将被执行。由于该类只加载一次,静态代码块只执行一次。在程序中,类的成员变量通常用静态代码块初始化。

  示例:

  课程示例{

  公共静态void main(String[]args){

  student 1 stu 1=new student 1();

  student 1 stu 2=new student 1();

  student 1 stu 3=new student 1();

  }

  }班级学生1{

  字符串名称;

  //构造一个代码块

  {

  System.out.println(我是积木);

  }

  //静态代码块

  静态{

  System.out.println(我是静态代码块);

  }

  //构造方法

  公共学生1(){

  System.out.println(我是student1类的构造函数);

  }

  }输出:

  我是一个静态代码块。

  我在构建代码块。

  我是student1班的构造方法。

  我在构建代码块。

  我是student1班的构造方法。

  我在构建代码块。

  我是student1班的构造方法。从输出结果我们不难看出,代码块的执行顺序是静态代码块-构造代码块-构造方法。

  静态装饰的数量将与类文件一起加载,该类文件属于上述具有最高优先级的实例。虽然我们已经创建了三个实例化的对象,但是静态代码块中的内容只是顺序执行,并且是第一次执行,也就是说静态代码块只有在第一次使用类的时候才会加载,而且只会加载一次。

  版权归作者所有:原创作品来自博主小二上九8,转载请联系作者取得转载授权,否则将追究法律责任。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: