static:可以修饰成员变量和成员方法。

当变量被static修饰后,则其可以直接被类名调用。类名.成员。

static特点:

随着类的加载而加载;

优先于对象存在;

被所有的对象共享,节省空间,但生命周期过长,访问有局限性。

可以直接被类名调用;

实例变量和类变量的区别:

存放位置:类变量随着类的加载而存在在方法区中,而实例变量随着对象的建立存放在堆内存中。

生命周期:

使用注意事项(理解为什么):

静态方法只能访问静态成员;

静态方法中不可以定义this,super关键字;

主函数是静态的。

什么时候使用静态?

当对象中出现共享数据,则使用静态修饰,而特有的数据则修饰为非静态存放在堆内存中。

什么什么定义静态函数?

当功能内部没有访问到非静态数据时可以定义为静态的。(理解为什么)

Java学习笔记——static关键字与静态的使用方法的更多相关文章

  1. Java学习笔记(三)——静态导入,package-info,Fall-through

    [前面的话] 算是真正的放松了好几天时间,没有看任何书,没有任何任务,今天是过完年后的第一天上班时间,我又开始了我的学习之路,感觉还没有老,怎么心态越来越平静了,进入工作状态,就好好努力工作,新的一年 ...

  2. Java学习笔记18---final关键字修饰变量、方法及类

    英语里final这个单词大家都知道是"最终的"意思,其实还有一个意思是"不可更改的".在Java里,final关键字作"不可更改的"来解释更 ...

  3. Java学习:static 关键字概述

    static 关键字概述 一旦用了static关键字,那么这样的内容不再属于对象自己.而是属于类的,所以凡是本类的对象,都共享同一份. 如果没有static关键字,那么必须首先创建对象,然后通过对象才 ...

  4. java学习笔记11-static关键字

    如果在类中使用static关键字创建方法,这种方法称为类方法,可以在这个类中直接引用.而不是用static创建的方法.这种方法称为对象方法(实例方法),需要创建对象后才能使用. package les ...

  5. 疯狂java学习笔记之面向对象(六) - 构造器重载、方法重载和方法重写

    一.方法重载(Overload): Java允许同一个类中定义多个同名方法,只要形参不一样就可以,如果同一个类中包含了两个或两个以上方法名相同的方法,但形参列表不同,则被成为方法重载(两同一异). 同 ...

  6. Java学习笔记(七)——获取类中方法的信息,java的LinkedList

    [前面的话] 在实际项目中学习知识总是最快和最有效的,既能够较好的掌握知识,又能够做出点东西,还是简单的知识总结,最近一直在总结笔记,写的东西还是比较水,希望慢慢可以写出一些干货. 学习过程中的小知识 ...

  7. 疯狂java学习笔记之面向对象(一) - 定义类、方法、构造器

    Java面向对象 1.定义类 2.创建对象.调用方法 类和对象: 某一类对象的概念定义. 比如:人类 - 抽象出来的概念(不特指某个人) 对象 - 在类的概念下产生的一个实例,它就是一个对象了. ja ...

  8. java新手笔记11 类的静态属性、方法(单例)

    1.Person类 package com.yfs.javase; public class Person { String name;//每个对象上分配 与对象绑定 int age; char se ...

  9. java学习笔记(13) —— google GSON 实现json转化方法

    1.配置struts.xml <action name="getGsonAction" class="com.test.action.json.GetGsonAct ...

随机推荐

  1. python3_RoboBrowser_test

    python3_RoboBrowser_test selenium库作为交互是非常方便的,但是却大大加长了加载的时间,例如需要渲染网址,加载js,造成在爬虫过程中时间变长. 因此找到一个虚拟的浏览器, ...

  2. fetch用法

    fetch(REQUEST_URL) .then((response) => response.json()) .then((responseData)=> { console.log(r ...

  3. String 深浅拷贝的测试---有待继续测试

    public class TestString { void test1() { // TODO Auto-generated method stub String str = new String( ...

  4. Protocol Buffer基本介绍

    转自:http://www.cnblogs.com/stephen-liu74/archive/2013/01/02/2841485.html 该系列Blog的内容主体主要源自于Protocol Bu ...

  5. ie数组不支持indexOf 方法解决

    if(!Array.prototype.indexOf){ Array.prototype.indexOf = function(obj){ for(var i=0;i<this.length; ...

  6. PHP中使用CURL实现get和post请求(总结)

    一.什么是curl curl是利用url语法在命令行方式下工作的开源文件传输工具. 二.PHP curl函数

  7. IRedisClient 常用方法说明

    事实上,IRedisClient里面的很多方法,其实就是Redis的命令名.只要对Redis的命令熟悉一点就能够非常快速地理解和掌握这些方法,趁着现在对Redis不是特别了解,我也对着命令来了解一下这 ...

  8. Install Apache, PHP And MySQL On CentOS 7 (LAMP)

    This tutorial shows how you can install an Apache2 webserver on a CentOS 7.0 server with PHP5 suppor ...

  9. TX Textcontrol 使用总结四——打印

    使用内置的打印对话框在Text Control中只需一行代码就可以实现打印操作,通过调研 TextControl.Print 方法将打开一个打印对话框,用户可以设置打印机和其他打印参数.==>t ...

  10. Env: Linux下Source Insight安装

    1.Wine安装 sudo apt-get install wine 如果有错误,可以sudo apt-get update 2.下载source insight,注意要是安装版 http://www ...