Java补充内容
在第一个Java程序中已经提到一些基本的知识点,这里再补充几点。
1. 成员变量和局部变量的区别
成员变量:成员变量定义在类中,默认初始值为0,定义时可以不初始化,在整个类中可见。
局部变量:局部变量定义在方法中,无默认初始值,定义变量时要初始化,只在方法中可见。
变量重名:在不同的方法中,局部变量可以重名。局部变量和成员变量可以重名,并且重名时局部变量优先级高。
2. 静态成员
静态成员用修饰符static修饰,使用 static 可以修饰成员变量、方法和代码块。被类的所有对象所共享。静态变量也叫类变量,一旦初始化,其值就不能再改变。静态成员可以使用类名直接访问,也可以使用对象名进行访问。推荐使用类名直接访问。
3. 初始化块
我们知道构造方法在创建类对象时可以初始化成员变量,Java中,也可以用初始化块进行成员变量的初始化。格式如下:
public class className{
Type Var1;
Type Var2;
static Type Var3;
……
//使用初始化块初始化成员变量
{
var1=value1;
var2=value2;
} //使用初始化块初始化静态成员变量
static{
var3=value3;
}
……
}
在类的声明中,可以包含多个初始化块,当创建类的实例时,就会依次执行这些代码块。如果使用static修饰初始化块,就称为静态初始化块。需要特别注意:静态初始化块只在类加载时执行,且只会执行一次(静态变量初始化后值不能再改变),同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。
4. foreach循环
foreach循环是一种加强的for循环,可以在不使用下标的情况下遍历数组。格式如下:
for(声明语句:数组名){
……
}
比如现有一个int型数组int[] array={0,1,2,3},想要依次打印数组元素,则可以按如下代码实现:
for(int x:array){
System.out.println(x);
}
Java补充内容的更多相关文章
- Java学习笔记16(面向对象九:补充内容)
总是看到四种权限,这里做一个介绍: 最大权限是public,后面依次是protected,default,private private修饰的只在本类可以使用 public是最大权限,可以跨包使用,不 ...
- JVM 专题五:类加载子系统(三)补充内容
3. 补充内容 3.1 在jvm中表示两个class对象是否为同一个类的两个必要条件 类的完整类名必须一致,包括包名. 加载这个类的ClassLoader(指ClassLoader实例对象)必须相同 ...
- Java开源内容管理CMS系统J4CMS的几个样式
www.j4cms.com java 开源内容管理 页面直接编辑 bootstrap3 样式 default 样式 metro 样式 oschina 样式 leblog 样式 foundation 样 ...
- Python学习---JSON补充内容[中文编码 + dumps解析]
JSON补充内容[微信解决中文乱码,接上] import json # 英文显示 dic = {"hello": "world"} str = json.dum ...
- 【转】JAVA输出内容打印到TXT以及不同系统中如何换行
JAVA输出内容打印到TXT以及不同系统中如何换行 http://xiyang.09.blog.163.com/blog/static/59827615201172552755293/ 2011-08 ...
- 实验一补充内容 Java开发环境的熟悉-刘蔚然
本次实验 PSP时间统计 步骤 耗时百分比 需求分析 5% 设计 10% 代码实现 67% 测试 15% 分析总结 3%
- java学习内容整理
转自:http://www.cnblogs.com/caoleiCoding/p/6170555.html 首先,我个人比较推崇的学习方法是:先学java前段,也就是HTML,css,js,因为学习j ...
- Java异常内容总结
在程序开发中,可能存在各种错误,有些错误是可以避免的,而有些错误却是意想不到的,在Java中把这些可能发生的错误称为异常. Throwable类是所有异常类的超类,该类的两个直接子类是Error和Ex ...
- Java文件内容的复制
package a.ab; import java.io.*; public class FileReadWrite { public static void main(String[] args) ...
随机推荐
- C# 进程优先级和线程优先级的方法
C# 设置进程优先级的方法 this.process1= Process.GetCurrentProcess(); process1.PriorityClass = ProcessPriorityCl ...
- jstack,jmap,jstat分别的意义
1.Jstack 1.1 jstack能得到运行java程序的java stack和native stack的信息.可以轻松得知当前线程的运行情况.如下图所示 注:这个和thread dump是同 ...
- ssm项目快速搭建(配置)
核心jar包 <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncod ...
- IDEA 导出maven项目所有的依赖包到指定的目录
问题产生: 需要把一个maven工程调整结构,部署到一个新环境中,需要把依赖的jar包,单独打到一个目录中. 解决方案: 需要两步便可以copy到指定的目录中. 第一步: 找到maven projec ...
- JXU1NDRBJXU0RTJBJXU1MjJCJXU1NDI3
U2FsdGVkX19f62S3+iSZxxJBADqNOfYV6/XumpnG7VwzMlQz7T7SaFsjyQx9d4PWAYQwtmgr4T9wDGKnKJCrR0veUEul6Uj4mEkN ...
- Java8简明学习之新时间日期API
由于历史原因,在之前的版本里无论Date还是Calendar都非常难用,尤其在涉及到日期计算方面,而且其中日期转换的类DateForamt还是非线程安全的.也正因为难用,一般项目里面都引入第三方的类库 ...
- csharp:获取 DNS、网关、子网掩码、IP
/// <summary> /// DNS.网关.子网掩码.IP /// 涂聚文 2015 /// </summary> public class IPAddressStrin ...
- 简单的PHP的任务队列
文章太长,不作过多介绍,反正,文章的头部就说明了大概的意思...原文如下:写了一个简单的队列任务处理.多进程任务,异步任务可能会用到这个(主要是命令行应用)比如,任务的某个一个环节速度十分不稳定,可能 ...
- 宝塔面板nginx配置安装Discuz
Discuz!在Nginx下的Rewrite 需要说明的是,下网上以前一直流传的Rewrite都是有误的. 下面的Rewrite中百分号前面多了个转移字符"",这在Apache中是 ...
- vue生命周期理解
https://segmentfault.com/a/1190000008010666?utm_source=tag-newest