当前位置: 首页 > news >正文

学校网站的建设费用吗自助建站系统哪个好

学校网站的建设费用吗,自助建站系统哪个好,北京市建设局网站,烟台网站制作套餐Static的五种用法大致如下: 修饰成员变量,使其成为类变量,也叫静态变量修饰成员方法,使其成为类方法修饰内部类,使其成为静态内部类静态代码块静态导包 直接一点,static关键字就是把属性和方法变为类相关&…

Static的五种用法大致如下:

  • 修饰成员变量,使其成为类变量,也叫静态变量
  • 修饰成员方法,使其成为类方法
  • 修饰内部类,使其成为静态内部类
  • 静态代码块
  • 静态导包

直接一点,static关键字就是把属性和方法变为类相关,而不是实例相关。

修饰成员变量

被static关键字修饰的属性叫做静态属性,也叫类属性。顾名思义现在该属性为该类所有,而非该类实例化的对象所有,在类的加载阶段进行初始化。虽然使用类实例化的对象也能够调用该属性,但是该属性是属于类所有,所有该类的实例化对象和该类共享一个值,即操作的是同一个值。

public class Person{static int age;static int high = 175;public static void main(String[] args){System.out.println(age);System.out.println(high);}
}class PersonTest{public static void main(String[] args){System.out.println(Person.age);}
}

成员变量不给初始值的话,会进行默认初始化。

被static修饰的属性,可以认为是属于类的,只要类进行加载以后,便可以使用类名.属性名进行调用。

修饰成员方法

被static关键字修饰的方法叫做类方法,修饰后的方法可以直接使类名.方法名调用,减少了实例化对象进行调用的资源消耗。

简单的来说被static修饰的方法,可以认为是属于类的,只要类进行加载以后,则就可以进行使用。

public class Person{static int age;static int high = 175;public static void seeMessage(String msg){System.out.println(msg);}
}class PersonTest{public static void main(String[] args){Person.seeMessage("Hello Codermast!");}
}

这里需要注意的是一个静态方法是不能够直接调用同类下的非静态方法,而同类下的非静态方法则可以调用同类下的静态方法。

修饰内部类

被static修饰的内部类完全独立于其所在的外部类,不属于外部类的对象,可以认为两个类是完全没有关系的两个类。

  • 静态内部类可以包含静态成员,也可以包含非静态成员,但是在非静态内部类中不可以声明静态成员。
  • 静态类内部不可以访问外部类的实例成员,只能访问外部类的类成员,即使是静态内部类的实例方法也不能访问外部类的实例成员,只能访问外部类的静态成员
  • 外部类不可以定义为静态类,Java中静态类只有一种,那就是静态内部类,顶级类不能用static 修饰

外部类如何调用静态内部类的属性和方法:

  1. 外部类可以通过创建静态内部类实例的方法来调用静态内部类的非静态属性和方法
  2. 外部类可以直接通过“ 外部类.内部类.属性(方法)” 的方式直接调用静态内部类中的静态属性和方法

创建一个静态内部类实例:

  • 在外部类中:直接使用类名创建即可,内部类名 name = new 内部类构造器;
  • 在其他类中:使用外部类.内部类 name = new 外部类.内部构造器;

静态代码块

static修饰代码块的作用就是,在类加载以后进行执行这段代码。我们需要着重看一下具体的执行顺序。下面是一个简单的示例。

class Dog {String name;public Dog(String name) {this.name = name;System.out.println("狗的名字叫:" + name);}
}class Person {String name;public Person(String name){this.name = name;System.out.println("人的名字叫:" + name);}static int age = 18;static {System.out.println("静态代码块1执行...");}static Dog xiaohuang = new Dog("小黄");Dog xiaohua = new Dog("小花");static {System.out.println("静态代码块2执行...");}static int high = 175;Dog xiaohei = new Dog("小黑");static Dog xiaobai = new Dog("小白");public static void main(String[] args) {Person person = new Person("codermast");}
}

该示例执行后的结果如下所示:

静态代码块1执行...
狗的名字叫:小黄
静态代码块2执行...
狗的名字叫:小白
狗的名字叫:小花
狗的名字叫:小黑
人的名字叫:codermast

则我们可以判断出执行的顺序为:

  1. 静态代码块和静态属性的顺序执行
  2. 非静态属性的执行
  3. 方法的调用

这里主要解释第一点,静态代码块和静态属性属于同一优先级,顺序执行。举个简单的例子即可理解:
输出

这里我们就无法调用到age属性

静态导包

静态导包用法,将类的方法直接导入到当前类中,从而直接使用“方法名”即可调用类方法,更加方便。

  • PrintMsg类
public class PrintMsg{public static void printMsg(String msg){System.out.println(msg)}
}
  • Test类
import static codermast.util.PrintMsg.*;
public class Test{public static void main(String[] args){printMsg("hello codermast!")}
}

运行Test类中的main方法后,就能在控制台看到“hello codermast!”的一行输出。

需要注意的是:导入的静态方法所处的类,不能和调用的类在同一个包下。

http://www.wooajung.com/news/29591.html

相关文章:

  • 寿光做网站的公司百度查重入口
  • 做淘宝客网站备案要怎么写佛山网络推广公司
  • 成都网站备案网络营销案例视频
  • 营销型网站主页定制一个产品营销策划方案
  • 湛江网站建设哪家优惠多seo基础知识包括什么
  • 唐山公司建设网站怎么看关键词的搜索量
  • 资源网站优化排名软件手机怎么建自己的网站
  • 如何做话费卡回收网站德州百度推广公司
  • 做菠菜网站好赚吗成免费crm特色
  • 优化推广网站seob站视频推广网站动漫
  • 做资源分享网站怎么样百度推广关键词越多越好吗
  • 企业网站做百度排名要怎么做单页面seo搜索引擎优化
  • 教人做家具的网站最新军事新闻事件今天
  • 深圳响应式网站找哪里十大洗脑广告
  • 哪家公司做移动网站百度广告费
  • 石家庄建设公司网站朋友圈广告
  • 做网站开发app淘宝网官方网站
  • 做网站学什么语言整站优化全网营销
  • php做网站最容易最常用的搜索引擎有哪些
  • 如何下载网页在线视频短视频seo营销系统
  • 免费推广网站大全黄色哈尔滨优化推广公司
  • 哪个网站可以做问卷调查推广策略包括哪些内容
  • 台市住房和城乡建设局网站重庆seo教程博客
  • 做电商一件代发的网站手机创建网站教程
  • 做网站要准备的资料外贸网站设计
  • 无锡网站建设方案维护百度客服怎么转人工电话
  • 手机怎做网站性价比高的seo网站优化
  • 海南做网站电话seo先上排名后收费
  • 网站建设应遵守的原则石家庄今日头条新闻
  • 北京移动端网站价格网络优化报告