[Java 05 OO] (基础篇) 《Java开发实战经典》

p5OO 第五章 面向对象 (基础篇) Notes
 (1), Constructor
/ this / String

   String str1 = "hello"; 解释 :
是把一个在堆内存空间的使用权给了 str1 对象。
   String str2 = "hello";
str1 == str2 是 true
   String
字符串的内容不可改变
 (2), Java 常用的内存区域
 
  1), 栈内存空间    2), 堆内存空间
    3), 全局数据区
   4), 全局代码区
 (3), static 类属性,
类方法

    非 static 声明的方法可以去调用 static
声明的属性或方法。
    static 声明的方法不能调用 非 static
声明的属性或方法。
 (4), 理解 main 方法   public
static void main(String[] args)

   1),
public:表示此方法可以被外部调用
   2), static :
表示此方法可以由类名称直接调用
   3), void :
主方法是程序的起点,所有不需要任何的返回值
   4), main :
系统规定好默认调用的方法名称,执行时默认找到 main 方法名称
   5), String args[]
运行时参数,参数传递的形式是 : “java类名称”, 参数1, 参数2, ...
 (5),
代码块

   1), 普通代码块  :  直接在方法或者语句中定义的代码块
 
   2), 构造块     :
 直接写在类中的代码块
   3), 静态代码块  :  使用 static
关键字声明的代码块
   4), 同步代码块 
 
 总结 :
静态代码块优先于主方法执行,而在类中定义的静态代码块会优先于构造块执行,而且不管有多少个对象产生,静态代码块只执行一次。
 (6),
私有构造方法 - 单例

     private static Singleton
instance = new Singleton();
     private
Singleton() {}
     public static Singleton
getInstance() {
         return
instance;
     }
 (7),
内部类
  http://blog.csdn.net/robbyo/article/details/26233993


 1 package com.qunar.basicJava.javase.p5OO;
2
3 /**
4 * Author: [email protected] Date: 14-5-18 21:35
5 * Knowledg : Constructor / this
6 */
7 public class Person {
8 private String name;
9 private int age; // default 0
10
11 public Person() {
12 System.out.println("一个新的 Person 对象被实例化");
13 }
14
15 public Person(String name) {
16 this.name = name; // this 表示当前对象
17 }
18
19 public Person(String name, int age) {
20 this(); // this 调用构造函数
21 this.setName(name);
22 this.setAge(age);
23 }
24
25 public String getName() {
26 return name;
27 }
28
29 public void setName(String name) {
30 this.name = name;
31 }
32
33 public int getAge() {
34 return age;
35 }
36
37 public void setAge(int age) {
38 if (age >= 0 && age < 150) {
39 this.age = age;
40 }
41 }
42
43 public void tell() {
44 System.out.println("姓名 : " + this.getName());
45 System.out.println("年龄 : " + this.getAge());
46 }
47
48 public static void main(String[] args) {
49 Person person = new Person("RoBY", -20); // 如果没写构造函数,则默认有一个无参构造函数,写了则不会存在默认的Constructor。
50 person.tell();
51 }
52 }
53   

[Java 05 OO] (基础篇) 《Java开发实战经典》,布布扣,bubuko.com

时间: 2024-10-26 10:15:40

[Java 05 OO] (基础篇) 《Java开发实战经典》的相关文章

《Java Web开发实战经典》.(李兴华).[PDF]pdf

下载地址:网盘下载 内容简介  · · · · · · <Java开发实战经典(名师讲坛)>是一本综合讲解Java核心技术的书籍,在书中使用大量的代码及案例进行知识点的分析与运用,并且给出一些比较成熟的开发步骤,帮助读者更好地进行Java的开发.从作者多年的Java培训经验来看,大部分学生对各种高端开发都没有任何问题,唯一的问题在于Java基础并不牢固,而且在国内也始终没有一本真正可以引领读者入门的好书籍,大部分的书籍都是围绕概念本身进行讲解的,没有讲解清楚为什么要具备这些知识以及该如何去理解

&lt;java开发实战经典&gt;

<JAVA开发实战经典>&&<JAVA WEB开发实战经典> JAVA开发实战经典总结: 第一章:介绍 第二章:基本语法(数据类型.常量.变量.数据类型的强制转换)

《Java web 开发实战经典》读书笔记

去年年末,也就是大四上学期快要结束的时候,当时保研的事情确定了下来,终于有了一些空闲的时间可以学点实用的技术. 之前做数据库课程设计的时候,也接触过java web的知识,当时做了一个卖二手书籍的网站,但是由于掌握的技术不够,最后做出来的东西勉强能应付答辩.所以,想抽出时间继续昨晚这个项目.当时,我有些找工作的同学,已经在北京经历了找工作的艰辛,所以他们时常会举办一些小讲座,给学弟学妹传授找工作的经验,我也从这上面学到不少东西.<Java web 开发实战经典>这本书便是以为找工作的同学浩哥给

39.JAVA编程思想之外篇——JAVA图形化设计精简大全一文覆盖

39.JAVA编程思想之外篇--JAVA图形化设计精简大全一文覆盖 欢迎转载,转载请标明出处:http://blog.csdn.net/notbaron/article/details/51204948 目录 Java图形化界面设计--容器(JFrame)...1 Java基本类(JFC)...1 l     AWTAbstract Window Toolkit(AWT)抽象窗口工具包... 2 l     Swing包... 2 l     AWT和Swing的区别... 6 Swing基本框

视频版|Flask 基础与 Web 开发实战

公开课主题:Flask 基础与 Web 开发实战 主要内容: 一.Web 开发基础 二.在 Flask 中的 "Hello World" 三.Flask 的模版 四.Flask 的消息提示与异常处理 主讲师:Nick 担任某上市公司运维开发岗,在公司主导运维自动化的开发与运维前沿技术的落地,近两年也一直专注于运维开发转型和实践,从运维到运维开发一路走来,很愿意与大家分享在转型过程中的五谷杂粮. 视频

Java 笔试面试 基础篇 一

1. Java 基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法, 线程的语法,集合的语法,io 的语法,虚拟机方面的语法. 1.一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制? 可以有多个类,但只能有一个public 的类,并且public 的类名必须与文件名相一致. 2.Java 有没有goto? java 中的保留字,现在没有在java 中使用. 3.说说&和&&的区别. &和&am

读书笔记--《java语言程序设计--基础篇》

一.概述:    这是读的第一本英文原版的专业书籍,总的来说,因为自己也有一些基础,读起来并不是非常的费劲.前半部分主要是介绍java的相关语法,正好借着这样的机会巩固了一下自己的码代码的能力,基本上把书中的代码都打了一遍,前面的部分主要是用的notepad++来写的,notepad++ 也有代码提示功能,用起来还是挺不错的,但是用cmd 来编译,连接,javac 然后java 执行,似乎很容易出现编码格式方面的问题.后半部分主要是利用Myeclipse来写的,也尝试了一下 intelliJ i

Java面试题-基础篇四

31.String s = new String("xyz");创建了几个StringObject?是否可以继承String类? 两个或一个都有可能,"xyz"对应一个对象,这个对象放在字符串常量缓冲区,常量"xyz"不管出现多少遍,都是缓冲区中的那一个.NewString每写一遍,就创建一个新的对象,它使用常量"xyz"对象的内容来创建出一个新String对象.如果以前就用过'xyz',那么这里就不会创建"xyz&

Java学习第五篇 -- Java开发环境

Java开发环境 Java SE 开发环境 Java的开发环境支持Windows.MacOS.Linux,故下面以操作系统作为分类去配置开发环境. Windows Java Platform, Standard Edition Installation Guide - Windows 安装并配置JDK 下载JDK Java SE Development Kit 8 Downloads Java SE Development Kit 8 选择 Windows x64 先接受协议,然后下载 jdk-