JAVA自学笔记07
JAVA自学笔记07
1、构造方法
1) 例如:Student s = new Student();//构造方法
System.out.println(s);// Student@e5bbd6
2)功能:给对象中的数据进行初始化
3)格式:方法名与类名相同,没有具体的返回值类型(包括void),没有具体的返回值
public 类名(){…;};
4)注意事项:如果不提供构造方法,系统将给出默认的无参构造方法,若已给出,系统不再给出构造方法,可以被重载。
5)重载格式:可以有参数列表即可以在构造方法中为变量赋初值
2、类的成员方法
1)划分:void/有明确返回值、带参/无参
2)类的组成:成员变量、成员方法、构造方法例题1
例题1:定义一个标准学生类
class Student{
private String name;
private int age;
public Student(String name,int age){
this.name=name;
this.age=age;
}
public String getName{
return name;
}
public String getAge{
return age;
}
}
例题2:请说明Student s = new Student();
中内存做了哪些事情
①加载Student.class文件进内存
②在栈内存为s开辟空间
③在堆内存为学生对象开辟空间
④对学生对象的成员变量进行默认初始化
⑤对学生对象的成员显示进行默认初始化
⑥通过构造方法对学生对象的成员变量赋值
⑦学生对象初始化完毕,把对象地址赋值给s变量
import 要在所有clase之上
例题3:定义一个类Demo,其中定义一个求两个数据和的方法
class Demo{
public in sum(int a,int b){
return a+b;
}
}//变量仅当描写类信息时才定义为成员变量,变量范围越小越好
3、static
1)作用:针对多个对象有共同的值的时候
2)被所有对象共有,一旦被修改则全部都将改变
3)特征;①随着类的加载而加载
②优先于对象而存在,创建对象时已加载好类
③被所有类的对象共享,如果某个成员变量是被所有对象共享的,那么它是静态的
④可以通过类名调用:类名.变量名;故它被称为类成员
4)内存图解:
5)注意事项:
①静态方法中无this关键字:因为静态时随着类的加载而加载,this是随着对象的创建而存在的,静态比对象先存在
②静态方法只能访问静态成员变量和静态成员方法,而非静态方法可以访问任何成员变量
6)静态变量和成员变量的区别:
4、main方法
1)public:公共的访问权限
static:不需要创建对象,通过类名就可以被JVM调用
void:没有返回值
main:方法入口标识
String args[]:字符串数组,长度为0
JAVA自学笔记07的更多相关文章
- JAVA自学笔记09
JAVA自学笔记09 1.子类的方法会把父类的同名方法覆盖(重写) 2.final: 1)可修饰类.方法.变量 2)修饰类时:此时该类变为最终类,它将无法成为父类而被继承 3)修饰方法时:该方法将无法 ...
- JAVA自学笔记05
JAVA自学笔记05 1.方法 1)方法就是完成特定功能的代码块,类似C语言中的函数. 2)格式: 修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2,-){ 函数体; return ...
- JAVA自学笔记06
JAVA自学笔记06 1.二维数组 1)格式: ①数据类型[][]数组名 = new 数据类型[m][n]; 或 数据类型[]数组名[]=new 数据类型[m][n]; m表示这个二维数组有多少个一维 ...
- JAVA自学笔记04
JAVA自学笔记04 1.switch语句 1)格式:switch(表达式){ case 值1: 语句体1; break; case 值2: 语句体2; break; - default: 语句体n+ ...
- JAVA自学笔记10
JAVA自学笔记10 1.形式参数与返回值 1)类名作为形式参数(基本类型.引用类型) 作形参必须是类的对象 2)抽象类名作形参 需要该抽象类的子类对象,通过多态实现 3)接口名为形参 需要的是该接口 ...
- JAVA自学笔记13
JAVA自学笔记13 1.StringBuffer类 1)线程安全的可变字符序列 线程安全(即同步) 2)StringBuffer与String的区别:一个可变一个不可变 3)构造方法: ①publi ...
- JAVA自学笔记11
JAVA自学笔记11 1:Eclipse的安装 2:用Eclipse写一个HelloWorld案例,最终在控制台输出你的名字 A:创建项目 B:在src目录下创建包.cn.itcast C:在cn.i ...
- JAVA自学笔记14
JAVA自学笔记14 1.正则表达式 1)是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串.其实就是一种规则.有自己的特殊应用 2)组成规则: 规则字符在java.util.rege ...
- JAVA自学笔记12
JAVA自学笔记12 1.Scanner 1)JDK5后用于获取用户的键盘输入 2)构造方法:public Scanner(InputStream source) 3)System.in 标准的输入流 ...
随机推荐
- 请推荐几个asp.net下做网站的好的开源框架
1.We7 CMS We7 CMS是由西部动力开发的一款充分发掘互联网Web2.0(如博客.RSS等)的信息组织优势,将其理念利用到政府企事业网站的构建.组织.管理中的网站建设和管理方面的产品. 系统 ...
- 再理解tcp backlog
在Linux 2.2以前,backlog大小包括了半连接状态和全连接状态两种队列大小.linux 2.2以后,分离为两个backlog来分别限制半连接SYN_RCVD状态的未完成连接队列大小跟全连接E ...
- Flask Web中用MySQL代替SQLite
由于.sqlite文件操作的诸多不便,决定常识用MySQL代替书上的SQLite作为数据库. 1.在虚拟环境中安装mysql-Python具体步骤为: <1> 安装python-dev s ...
- Redis主从实战
为了提升redis高可用性,除了备份redis dump数据之外,还需要创建redis主从架构,可以利用从将数据库持久化,(我们所说的数据持久化将是将数据保存到写磁盘上,保证不会因为断电等因素丢失数据 ...
- jquery对form表单复杂(多个)条件的判断验证
//按钮先执行验证再提交表 $(document).ready(function(){ // 点击查看图片 $('.nyroModal').nyroModal(); //按钮先执行验证再提交表单 $( ...
- jQuery Validate自定义错误信息,自定义方法
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 【转】科大校长给数学系学弟学妹的忠告&本科数学参考书
1.老老实实把课本上的题目做完.其实说科大的课本难,我以为这话不完整.科大的教材,就数学系而言还是讲得挺清楚的,难的是后面的习题.事实上做1道难题的收获是做10道简单题所不能比的. 2.每门数学必修课 ...
- tesorflow - create neural network+结果可视化+加速神经网络训练+Optimizer+TensorFlow
以下仅为了自己方便查看,绝大部分参考来源:莫烦Python,建议去看原博客 一.添加层 def add_layer() 定义 add_layer()函数 在 Tensorflow 里定义一个添加层的函 ...
- OpenJ_Bailian 2810 完美立方
题目地址: https://vjudge.net/problem/OpenJ_Bailian-2810 形如a3= b3 + c3 + d3的等式被称为完美立方等式.例如123= 63 + 83 + ...
- Java BigDecimal详解,提供了丰富的四舍五入规则
java.math.BigDecimal类提供用于算术,刻度操作,舍入,比较,哈希算法和格式转换操作. toString()方法提供BigDecimal的规范表示.它使用户可以完全控制舍入行为. 提供 ...