Java学习笔记——鸵鸟学习记(二)
---恢复内容开始---
4. 数组对象
4.1 数组的创建
a, 数组对象
在Java语言中,数组对象可以表示一组数字。
int[] arr = new int[30];(new可以表示为创建的意思)
创建一个数组对象(Array Object),长度为30,存储的数据类型为int
变量名称: arr
变量类型: int[ ](即数组对象)
b,数组元素的访问
第i个元素用arr[i]表示,i为索引或下标,下标从0开始
c, 数组的遍历
从头到尾,挨个访问
d, 数组的初始化
- new 出来 : int [ ] arr = new int[ 20] 默认初始化值为0
 - 指定初始值
 
int[ ] arr = {1,2,3,4};
即用一个大括号将所有值列出来,每个值以逗号分隔。
e,数组的长度
数组名.length
for (int i = 0; i<arr.length ; i++)
{
}
4.2 对象与引用
a,
int[ ] a = new int[4];
等号右侧:创建了一个数组对象
等号左侧: 变量a称为该对象的引用
称作: 变量a指向了一个对象或a是对象的名字。
int[] a = new int[4];
int[] b = a;
结果: a 指向了一个对象
b 和a指向了相同的对象(a b都可以操作目标对象,相当于一个物体有两个名字,这里将名字称作引用)
b,空对象 null
即不指向任何对象
c, 失去引用对象
        int[] a ={7,7,7} ;
        a = new int[4];
        a[0]=a[1]=a[2]=a[3]=6;
- 创建了一个数组对象object1,内容为7,7,7
 - 创建了第二个数组对象object2,内容为0,0,0
 - 此时object2内容变为6,6,6,而object1无人引用(失去引用对象,会被java运行环境自动删除)
 
5. 类
5.1 新建类
类,class: 用于描述一种数据类型
a, 类和属性
package my; public class Student
{
public String id ;//学号
public String name ;//姓名
public boolean sex ;//性别
public String cellphone ;//手机号
}
- 类型名Student,表示自定义类型
 - 属性:即学生的属性包括 id name sex cellphone
 
b, 创建对象
Student s1 = new Student();
s1.id = "20171001";
s1.name = "嘉";
s1.sex = true;
s1.cellphone = "15129897963";
- new Student: 创建一个Student类型的对象(Student是类型 s1是对象)
 - s1.id :对象的属性用点号来访问
 
6. 类的方法
6.1 类的方法
a, 方法
一个类里,不仅可以添加属性,还可以添加方法
类
{
属性:描述的是“我有什么”
方法:描述的是:“我能做什么”
}
例程:
//创建的类Student 方法show
package my; public class Student
{
public String id ;//学号
public String name ;//姓名
public boolean sex ;//性别
public String cellphone ;//手机号 //用于报数
public void show ()
{
for(int i=0;i<10;i++)
{
System.out.println("报数"+ (i+1));
}
}
} //主程序,调用方法
package my; public class HelloWorld
{ public static void main(String[] args)
{
Student s = new Student();
s.show(); } } 运行结果:报数1
报数2
报数3
报数4
报数5
报数6
报数7
报数8
报数9
报数10
b,方法的参数
- 语法格式:void show(类型+变量名,int a,double b)
 //设定参数maxNumber,有主程序来传递报数的个数
package my; public class Student
{
public String id ;//学号
public String name ;//姓名
public boolean sex ;//性别
public String cellphone ;//手机号 //用于报数
public void show (int maxNumber)
{
for(int i=0;i<maxNumber;i++)
{
System.out.println("报数"+ (i+1));
}
}
} //主程序 package my; public class HelloWorld
{ public static void main(String[] args)
{
Student s = new Student();
s.show(3); } } 运行结果:报数1
报数2
报数3c,方法的返回值(即做这件事的结果)
- return 语句: 可以返回一个值,且退出程序。
 
d,方法名的重载(overload)
package my; public class Simple
{
public void test()
{}
public void test(int a,int b)
{}
public void test(int a,String b)
{}
}
调用的时候,编译器会根据参数列表来匹配不同的方法。
7,当前对象
a,当前对象:this
//求像素,
package my; public class Screen
{
public int width;
public int height; public int pixel()
{
int result = this.width*this.height;
return result;
}
} //主程序
package my; public class HelloWorld
{ public static void main(String[] args)
{
Screen s = new Screen(); s.width = 1366;
s.height = 768;
int p = s.pixel();
System.out.println("像素"+ p); } } 运行结果:像素1049088
要访问自己的属性和方法时,可以用this来访问。
b,省略与重名
当与方法内变量重名时,不能省略this。
Java学习笔记——鸵鸟学习记(二)的更多相关文章
- Java学习笔记——鸵鸟学习记(三)
		
8,对象的创建与销毁 a, 构造方法——在构造对象的时候同时传入相关的属性 用于构造对象的方法(当创建对象时调用的方法) 规则:1)方法名与类名相同 2)无返回值 package my; public ...
 - Java学习笔记——鸵鸟学习记(一)
		
1. 变量 1.1 使用变量 a, 变量三要素:名字 值 类型 b, 变量命名 英文字母,数字,下划线,但不能数字开头 并不是英文单词,用拼音也可以 随便写也可以,但可读性差 区分大小写(Y与y是不同 ...
 - Java菜鸟学习笔记--数组篇(三):二维数组
		
定义 //1.二维数组的定义 //2.二维数组的内存空间 //3.不规则数组 package me.array; public class Array2Demo{ public static void ...
 - 20155234 2016-2017-2第十周《Java学习笔记》学习总结
		
20155234第十周<Java学习笔记>学习总结 教材学习内容总结 网络编程 在两个或两个以上的设备(例如计算机)之间传输数据.程序员所作的事情就是把数据发送到指定的位置,或者接收到指定 ...
 - #学习笔记#e2e学习使用(二)
		
前言: <#学习笔记#e2e学习使用(一)>主要记录了Vue项目的创建到e2e环境的搭建,以及期间遇到的各种问题和解决方法.本文建立在基础测试环境搭建完毕能正确运行的情况下,编写测试代码, ...
 - java JDK8 学习笔记——助教学习博客汇总
		
java JDK8 学习笔记——助教学习博客汇总 1-6章 (by肖昱) Java学习笔记第一章——Java平台概论 Java学习笔记第二章——从JDK到IDEJava学习笔记第三章——基础语法Jav ...
 - JavaScript学习笔记之数组(二)
		
JavaScript学习笔记之数组(二) 1.['1','2','3'].map(parseInt) 输出什么,为什么? ['1','2','3'].map(parseInt)//[1,NaN,NaN ...
 - vue2.0学习笔记之路由(二)路由嵌套+动画
		
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
 - vue2.0学习笔记之路由(二)路由嵌套
		
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
 
随机推荐
- c语言实验报告
			
实验项目:分支结构实验 姓名:熊承启 4.3.1if语句的应用 问题描述: 读入三个分别表示箱子长宽高的整数值,判断并输出该箱子是长方体还是正方体. 程序框图: 程序实现: #include< ...
 - KendoUI  自定义CheckBoxList
			
不多说直接上代码 CSS完整代码: .e-selectboxs-container { display: table; } .e-selectbox { min-width: 100px; heigh ...
 - Jrebel 配置
			
先下载插件 http://139.199.89.239:1008/88414687-3b91-4286-89ba-2dc813b107ce http://jrebel.autoseasy.cn/xix ...
 - KMeams算法应用:图片压缩与贝叶斯公式理解
			
from sklearn.datasets import load_sample_image import matplotlib.pyplot as plt from sklearn.cluster ...
 - 为什么以sys无法远程登录数据库
			
今天通过pl/sql连接一个数据库,普通用户能连接上,但是sys就连接不上,告诉我用户名密码错误.之前其实遇到过这个问题,然后就开始查找原因.整个过程记录如下,结果是扎心的,过程也不是完全都懂.记下来 ...
 - 实现自己的MVC AJAX框架计划
			
最近看了一下设计自己框架的文章,所以也想自己去实现一个小框架,用于以后的项目中,只求方便, 需要参考各位前辈的代码,或者直接copy过来为我所用,哈哈,想想都开心. 不过,要写个好的框架肯定不容易,现 ...
 - Shell脚本出现$'\r': command not found
			
Centos7下执行shell脚本报错如下 [root@ip---- ~]# sh install_zabbix_agent.sh install_zabbix_agent.: $'\r': comm ...
 - Kafka入门 --安装和简单实用
			
一.安装Zookeeper 参考: Zookeeper的下载.安装和启动 Zookeeper 集群搭建--单机伪分布式集群 二.下载Kafka 进入http://kafka.apache.org/do ...
 - VS2017自定义新建模板
			
今天测试了一下用自定义的模板新建C++模板,结果出了一些问题,不过已经解决了,现在把经验分享出来. 1. 首先可以先自定义一个以后经常用的模板,例如下面这个. 2. 项目 下找到 导出模 ...
 - 筛选最小值---verilog
			
筛选最小值---verilog `timescale 1ns / 1ps /////////////////////////////////////////////////////////////// ...