方法:

1. 基本的main方法:

public static void main(String[] args)

2.静态方法内部调用非静态方法:重新声明一个类,通过这个类来调用非静态方法

 public class MAINMETHOD {
public static void main(String[] args) {
MAINMETHOD mm = new MAINMETHOD();
System.out.printf("%d", mm.max(5, 6)); } public int max(int a,int b){
return a>b?a:b;
}
11 }

3. 方法重载:在一个类内部出现了多个方法名称相同但参数列表不同的方法。

public void a(int a){}

public int a(){}

public void a(int a,String s){}

重载的方法的返回值不尽相同,通常情况下,重载的方法在访问控制符、修饰符和返回值类型上都保持相同。

4.参数的传递方法:

1)按值传递:参数的原始数值不发生改变,8种基本数据类型和String都是按值传递。

2)按址传递:参数的原始数值发生改变,除String以外的所有复合数据类型,包括数组、类和接口。

5.类

1)属性声明

访问控制符 [修饰符] 数据类型 属性名[=值]

2)方法声明

3)构造方法声明

访问控制符 构造方法名称(参数列表){
构造方法体;
}

构造方法名称必须和类名称相同。

public class Box{
int length;
int width;
int height; public Box(){
length = 10;
width = 10;
height = 10;
} public Box(int l,int w,int h){
length = l;
width = w;
height = h;
}
}

6.对象

1)对象的声明:

数据类型 对象名;

2)对象的初始化:

对象名 = new 构造方法(参数)

3)引用对象中的属性:在实际的面向对象程序中,一般都避免使用对象直接引用属性,代之以getter和setter方法进行访问。

4)引用对象中的方法

对象名.方法名(参数)

5)对象的存储

栈内存:存储基本数据类型,栈主要是用来执行程序的。

  堆内存:堆内存用于存放由new创建的对象和数组。

7.继承

访问控制符 [修饰符] class 类名 extends 父类名{
......
}

子类不继承父类的构造方法,但在子类的构造方法内部必须调用父类的构造方法。

覆盖:在子类内部重新书写父类中的方法的语法现象。子类的限制不能比父类严格。例如不能使用比父类限制更大的访问控制符或者抛出比父类更多的异常等。

8.访问控制符

访问控制符 同一个类内部 同一个包内部 不同包中的子类 不同包中的非子类
public Yes Yes Yes Yes
protected Yes Yes Yes No
无访问控制符 Yes Yes No No
private Yes No No No

public:只要能访问到对应的类,就可以访问到类内部的public修饰的内容;

protected:继承权限,被同一个包中的类访问或者不同包中的子类访问;

无访问控制符:包权限。修饰的内容可以被一个包中的类访问。

private:只能在当前类中访问。(eclipse中source->Generate Getters and Setters可以自动生成get和set方法)

《JAVA编程那点事儿》读书笔记(二)——类和对象的更多相关文章

  1. spring揭秘 读书笔记 二 BeanFactory的对象注册与依赖绑定

    本文是王福强所著<<spring揭秘>>一书的读书笔记 我们前面就说过,Spring的IoC容器时一个IoC Service Provider,而且IoC Service Pr ...

  2. spring揭秘 读书笔记 二 BeanFactory的对象注冊与依赖绑定

    本文是王福强所著<<spring揭秘>>一书的读书笔记 我们前面就说过,Spring的IoC容器时一个IoC Service Provider,并且IoC Service Pr ...

  3. 《实战Java高并发程序设计》读书笔记二

    第二章  Java并行程序基础 1.线程的基本操作 线程:进程是线程的容器,线程是轻量级进程,是程序执行的最小单位,使用多线程而不用多进程去进行并发程序设计是因为线程间的切换和调度的成本远远的小于进程 ...

  4. Objective-C 笔记二 类、对象和方法

    对象就是一个物件.面向对象的程序设计可以看成一个物件和你想对它做的事情.这与C语言不同,C语言通常称为过程性语言.在C语言中,通常是先考虑要做什么,然后才关注对象,这几乎总是与面相对象的思考过程相反. ...

  5. 新标准C++程序设计读书笔记_类和对象

    面向对象的程序设计方法 抽象:将某类客观事物共同特点(属性)归纳出来,形成一个数据结构(可以用多个变量描述事物的属性):将这类事物所能进行的行为也归纳出来,形成一个个函数,这些函数可以用来操作数据结构 ...

  6. 《Java并发编程的艺术》读书笔记:二、Java并发机制的底层实现原理

    二.Java并发机制底层实现原理 这里是我的<Java并发编程的艺术>读书笔记的第二篇,对前文有兴趣的朋友可以去这里看第一篇:一.并发编程的目的与挑战 有兴趣讨论的朋友可以给我留言! 1. ...

  7. 《深入了解java虚拟机》高效并发读书笔记——Java内存模型,线程,线程安全 与锁优化

    <深入了解java虚拟机>高效并发读书笔记--Java内存模型,线程,线程安全 与锁优化 本文主要参考<深入了解java虚拟机>高效并发章节 关于锁升级,偏向锁,轻量级锁参考& ...

  8. <<Java RESTful Web Service实战>> 读书笔记

    <<Java RESTful Web Service实战>> 读书笔记 第一章   JAX-RS2.0入门 REST (Representational State ransf ...

  9. Java学习笔记之---类和对象

    Java学习笔记之---类和对象 (一)类 类是一个模板,它描述一类对象的行为和状态  例如:动物类是一个类,动物们都有属性:颜色,动物们都有行为:吃饭 public class Dog { Stri ...

  10. 《Java编程那点事儿》读书笔记(三)——static,this,抽象类,接口和包

    1. static 1)静态变量:Java虚拟机为静态变量开辟单独的存储空间,所以所有的对象内部的静态变量在内存中都指向同一个地址,那么不管哪个对象改变这个成员变量,所有对象中该成员变量的值都发生变化 ...

随机推荐

  1. CentOS6.5 安装JDK1.7详细步骤参考

    一般情况下,我们都要将linux自带的OPENJDK卸载掉,然后安装SUN的JDK. 首先查看Linux自带的JDK是否已安装. 输入如下命令,查看已经安装的JAVA版本信息. 输入如下命令,查看JD ...

  2. android手机配置hosts文件

    Android设备测试服务器时,可能需要修改 hosts 文件指定域名到对应的 IP 地址.Android 是基于 Linux 的系统,与 Linux 类似,通过 hosts 文件来设置. 在 And ...

  3. IIS和MVC

    现象:MVC项目部署到IIS(7.5)后,浏览时只显示文件目录,不是网站 解决办法 1.服务器安装程序对应的Framework版本 2.服务器安装程序对应的MVC版本 3.安装CGI和ISAPI扩展: ...

  4. SPOJ 057 Supernumbers in a permutation

    原题链接:http://www.spoj.com/problems/SUPPER/ 这道题n<=200000,那么确定为nlogn的算法,再定位到求LIS的O(nlogn)的算法. 对于每个a[ ...

  5. 【BZOJ】【4010】【HNOI2015】菜肴制作

    拓扑排序 这题是要求N个点的一个拓扑序,且满足以下条件:编号1的位置尽可能靠前,在此基础上编号2的位置尽可能靠前…… 我看到这题的第一感觉:将拓扑排序用的队列改为优先队列,编号越小越早出来. 但是连样 ...

  6. [Shoi2007]Bookcase 书柜的尺寸 dp

    这道dp算是同类型dp中比较难的了,主要难点在于设置状态上: 如果像平时那样设置,必定爆空间没商量: 下面是一种思路: 先把输入进来的数据按h从大到小排序,这样就可以大大减少状态数, 然后设f[i][ ...

  7. Spring MVC学习问题记录

    自2015年3月11日开始进行记录 day01 2015.03.11 问题1:Line 1 in XML document from URL is invalid; 今天出现了Content is n ...

  8. HackPorts – Mac OS X 渗透测试框架与工具

    HackPorts是一个OS X 下的一个渗透框架. HackPorts是一个“超级工程”,充分利用现有的代码移植工作,安全专业人员现在可以使用数以百计的渗透工具在Mac系统中,而不需要虚拟机. 工具 ...

  9. Working with LOBs in Oracle and PHP

    原文链接:http://www.oracle.com/technetwork/articles/fuecks-lobs-095315.html Working with LOBs in Oracle ...

  10. 【算法】E.W.Dijkstra算术表达式求值

    算术表达式求值 我们要学习的一个栈的用例同时也是展示泛型的应用的一个经典例子,就是用来计算算术表达式的值,例如 ( 1 + ( ( 2 + 3 ) * ( 4 * 5 ) ) ) 如果将4乘以5,把3 ...