Java Day 06

二维数组
 定义:
 格式1 int[][] arr = new int[3][2];
 格式2 int[][] arr = new int[3][];//每个一维数组初始化时为null

空指针异常

格式3 int[][] arr ={{ },{ },{ }};
 
应用场景
 数组的数组
 map集合

面向对象
 
类与对象的关系
 类:事物的描述
 对象:类的实例
 属性和行为
 
 定义类就是在定义类中的成员
 成员变量 <--> 属性
 成员函数 <--> 行为

对象的内存体现
 栈 主函数 对象变量
 堆 创建对象实例

成员变量与局部变量区别
 1、成员变量定义在类中,整个类中可以访问
    局部变量定义在函数、语句、局部代码块中,只在所属区有效
 2、成员变量存在于堆内存的对象中
    局部变量存在于栈内存的方法中
 3、生命周期不同
 4、成员变量有默认初始化值,局部变量则没有

成员变量与局部变量同名
  方法进栈

匿名对象
 new Car();
 1、方法只调用一次,简化为匿名对象
 2、作为实际参数进行传递

参数传递是基本数据类型

 1 class Demo{
 2     public static void main(String[] args){
 3         int x=3;
 4         show(x);
 5         System.out.println("x="+x);
 6     }
 7     public static void show(int x){
 8         x=4;
 9     }
10 }

参数传递是引用数据类型

 1 class Demo{
 2     static int x=3;
 3     public static void main(String[] args){
 4         Demo d = new Demo();
 5         show(d);
 6         System.out.println("x="+x);
 7
 8     }
 9     public static void show(Demo d){
10         d.x=9;
11     }
12 }

封装 隐藏对象的属性和实现细节,对外提供公共访问方式
private 对本类可见

时间: 2024-11-01 20:39:15

Java Day 06的相关文章

java进阶06 线程初探

线程,程序和进程是经常容易混淆的概念. 程序:就是有序严谨的指令集 进程:是一个程序及其数据在处理机上顺序执行时所发生的活动 线程:程序中不同的执行路径,就是程序中多种处理或者方法. 线程有两种方法实现 一:继承Thread 覆盖run方法 package Thread; public class Thread1 { public static void main(String[] args){ MyThread1 thread1=new MyThread1(); thread1.setName

Java基础06 组合(转载)

在一个新类的定义中使用其他对象.这就是组合(composition).组合是在Java中实现程序复用(reusibility)的基本手段之一. 组合与"has-a" 一个对象是另一个对象的数据成员.比如我们看之前提到的充电电筒的例子: 一个充电电筒中的电池.LED灯.按钮…… 都可以是一个对象.我们可以定义一个Battery类来定义和产生电池对象.而在充电电筒的类定义中,可以用一个电池对象作为其数据成员,来代表电池部分的状态. 我们下面定义一个Battery类,并用power来表示其电

java 第06节 八大数据类型

2016-06-28 整型1个字节占8位 1 byte 1字节 -128~1272 short 2字节 -32768~327673 int 4字节 正负20亿多一点 用的最多4 long 8字节 特别大,当int不够用的时候,才会用long package day06; public class TestFloat { public static void main(String[] args) { int i1=1;//声明int类型变量 int i2=3; float f1=1f;//声明f

java作业 06

1.阅读QiPan.java示例程序了解如何利用二维数组和循环语句绘制五子棋盘. import java.io.*; public class QiPan{ //定义一个二维数组来充当棋盘 private String[][] board; //定义棋盘的大小 private static int BOARD_SIZE = 15; public void initBoard() { //初始化棋盘数组 board = new String[BOARD_SIZE][BOARD_SIZE]; //把

java中06的动手动脑

任务一: 代码: package Shi;   import javax.swing.JOptionPane;   public class Shi6d1 {   public static void main(String[] args) {   int array[] = new int[10]; for(int m=0;m<10;m++) {array[m] = (int)(Math.random()*100);} String str=""; for(int m=0;m&

Java基础06 组合

作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 我们已经尝试去定义类.定义类,就是新建了一种类型(type).有了类,我们接着构造相应类型的对象.更进一步,每个类型还应该有一个清晰的接口(interface),供用户使用. 我们可以在一个新类的定义中使用其他对象.这就是组合(composition).组合是在Java中实现程序复用(reusibility)的基本手段之一. 组合与"has-a" 一个对象是另一个对象的

Java学习06 (第一遍) - JSP与Servlet

EL(Expression Language) <% User user=(User)session.getAttribute("user"); Dept dept=user.getDept(); String departname=dept.getDname(); %> EL: ${sessionScope.user.dept.departname} =${sessionScope.user.dept["departname"]} //.与[ ]意思一

java基础06 IO流

IO用于在设备间进行数据传输的操作. Java IO流类图结构:   IO流分类 字节流: InputStream FileInputStream BufferedInputStream OutputStream FileOutputStream BufferedOutputStream 字符流: Reader FileReader BufferedReader Writer FileWriter BufferedWriter 一.FileInputStream/FileOutputStream

[java初探06]__排序算法的简单认识

今天,准备填完昨天没填的坑,将排序算法方面的知识系统的学习一下,但是在简单的了解了一下后,有些不知如何组织学习了,因为排序算法的种类,实在是太多了,各有优略,各有适用的场景.有些不知所措,从何开始. 最后按照常规思路,我将逐次从排序算法的了解,常用的几种排序算法的原理及实现,几种算法的对比以及适用场景.三个方面展开对排序算法的学习. 排序算法的基本了解 在我们学习一样知识,技术之前,首先我们应当对它有一个基本的了解,然后在了解的基础上逐渐深入学习. 在计算机科学与数学中,排序算法(Sorting

【Java基础06】包装类、toString、equals、final、import、static

1 包装类 1.1 包装类(Java8) Wrapper Class Java为8个基本类型提供了对应的包装类,通过这些包装类可以把8个基本类型的值包装成对象来使用.JDK1.5提供了自动装箱和自动拆箱功能,允许把基本类型值直接赋给对应的包装类引用变量,也允许把包装类对象直接赋给对应的基本类型变量. 1.2 自动装箱(Autoboxing)和自动拆箱(AutoUnboxing) 1.自动装箱:可以把一个基本类型变量直接赋给对应的包装类变量,或赋给Object变量:(低->高) 2.自动拆箱:可以