文档章节

Java面向对象理论篇

乐搏学院
 乐搏学院
发布于 2017/05/24 12:01
字数 860
阅读 3
收藏 0

面向对象:(学习王伟、传智等教程)

1.1)面向对象

面向对象是基于面向过程的编程思想

1.2)面向对象的思想特点

1.2.1)是一种更符合我们思考习惯的思想

1.2.2)把复杂的事情简单化

1.2.3)让我们从执行者变成了指挥者

2)类与对象

2.1)类(class)和对象(object)是面向对象方法的核心概念。类是对一类事物描述,是抽象的、概念上的定义;对象是实际存在的该类事物的每个个体,因而也称实例(instance)。 

2.2)Java语言中最基本的单位是类。所以,我们要用类来体现事物。

类:

成员变量    事物属性   属性:用来描述对象的数据元素称为对象的熟悉

成员方法    事物行为   方法:对对象的属性行为的操作成为对象的方法

类:是一组相关的属性和行为的集合。是一个抽象的概念。

对象:是该类事物的具体存在,是一个具体的实例。(对象)  

举例:学生:类  班长:对象

3、Java类的声明

语法格式:

[< modifiers>] class < class_name> {

 [<attribute_declarations>]

[<method_declarations>]

[<constructor_declarations>]

}

[<访问范围修饰>] class < 类名> {

 [<属性定义>]

[<方法定义>]

[<构造器定义>]

}

3.1)案例:

1

2

3

4

5

6

7

8

9

public class Student{

  //以下是属性定义

  String   name;

  int     age;

  //以下是方法定义

  voidgotoSchool(){

  System.out.println(“去上学”);

  }

}

 

4)属性的声明:

语法格式:

[< modifiers>]  type  < attr_name>  [=defaultValue] ; 

[< 访问范围修饰>]  类型  < 属性名> [=默认值] ;

4.1)案例:

1

2

3

4

5

6

7

8

9

10

11

public class Student{

  //以下是属性定义

  //定义年龄

  int   age;

  //定义姓名并初始化值

  String name = “LeBron  James”;  

  //定义班级名

  StringclassName= “一年三班”

  //定义学号

  StringstudentId;

}

5)方法的声明:

语法格式:

         [< modifiers>] <return_type> <name>([<type arg_name> , ..]) {

          [< statements>]

  } 

  [< 访问范围修饰>] <返回类型> <方法名>([<类型 参数名> , ..]) {

          [< 语句过程描述>]

  }

5.1)案例:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

public class Student{

  //定义考试方法  

     //定义了一个参数是String类型,参数名是subject

  //定义了这个方法返回结果的类型是int型

  intexam(String subject){

  if(subject==“英语”){

  //返回具体的int值

  return

60;  

  }else{

  return

90;

  }

  }

  //定义唱歌方法

void表示这个方法没有返回结果

  void

sing(){

  System.out.println(“唱歌”);

  }

}

6)创建对象:

6.1)根据类来创建对象

Student student = new Student();

6.2)可以创建很多对象,对象都拥有自己独有的属性和方法

1

2

3

Student s1 = new Student();

Student s2 = new Student();

Student s3 = new Student();

6.3)调用对象的属性和方法

1

2

3

4

5

6

7

8

Student s1 = new Student();

s1.name=“angelababy”;

s1.age = 27 ;

s1.sing();

Student s2 = new Student();

s2.name=“黄晓明”;

s2.age = 39 ;

s2.exam(“数学”);

 

7)Java对象内存图

7.1)一个对象的内存图

wKioL1jHhPrgmN-YAAHovi71OrM913.png-wh_50

7.2)二个对象的内存图

wKioL1jHhQbTY1hJAAK_ikG8qhU988.png-wh_50

7.3)三个对象的内存图

wKiom1jHhRDyzUm7AAJgbIP8sgs100.png-wh_50

注意:Java垃圾回收器: GC

8)Java程序的开发,设计和特征

8.1)开发:就是不断的创建对象,通过对象调用功能

8.2)设计:就是管理和维护对象间的关系

8.3)特征

8.3.1)封装

8.3.2)继承

8.3.3)多态

登录乐搏学院官网http://www.learnbo.com/

或关注我们的官方微博微信,还有更多惊喜哦~

本文出自 “永不放弃!任志远” 博客,谢绝转载!

© 著作权归作者所有

共有 人打赏支持
乐搏学院
粉丝 7
博文 526
码字总数 707467
作品 0
丰台
程序员
私信 提问
【Java】疯狂Java基础(一)——面向对象的特征:继承、封装和多态

一、前言 小编记得,刚接触计算机相关的课程的时候,接触的是c++,c++的老师一上来就说c++是面向对象的,c语言是面向过程的。面向对象比面向过程厉害,是从面向过程发展过来的的。 当时有一个...

kisscatforever
03/28
0
0
Java开发学习之三版本简介 java编程

  Java编程语言,在更迭迅速的互联网领域多年屹立不倒,足以得见Java这门语言旺盛的生命力,因此,会有很多想要进入互联网领域的朋友,想要学Java来转行开发。但是,所谓“隔行如隔山”,j...

老男孩Linux培训
06/05
0
0
Java程序员必读书单,家族又添新成员

点击关注异步图书,置顶公众号 每天与你分享IT好书 技术干货 职场知识 参与文末话题讨论,每日赠送异步图书。 ——异步小编 有些革命出其不意地吸引了全世界的眼球。Twitter、Linux操作系统和...

异步社区
05/09
0
0
《Java从小白到大牛精简版》之第1章 开篇综述

Java诞生到现在已经有20多年了,但是Java仍然是非常热门的编程语言之一,很多平台中使用Java开发。表1-1所示的是TIOBE社区发布的2016年5月和2017年5月的编程语言排行榜,可见Java语言的热度,...

tony关东升
06/26
0
0
JAVA中关于set()和get()方法的理解及使用

对于JAVA初学者来说,set和get这两个方法似乎已经很熟悉了,这两个方法是JAVA变成中的基本用法,也是出现频率相当高的两个方法。 为了让JAVA初学者能更好的理解这两个方法的使用和意义,今天...

hosealee
2013/05/30
0
7

没有更多内容

加载失败,请刷新页面

加载更多

小程序异步操作 跨js执行 在微信小程序里面实现跨页面通信

我们知道,在小程序里面一个页面的变化,是通过调用 setData 函数来实现的。所以想做到在二级页面里让一级页面产生变化,最 Quick And Dirty 的做法就是把一级页面的 this 传入到二级页面去,...

xiaogg
30分钟前
1
0
授于管理员登录其它用户

1.沙盒中,授予管理员登录 安全性控制==>登录访问权限政策

在山的那边
33分钟前
4
0
线程安全的CopyOnWriteArrayList介绍

证明CopyOnWriteArrayList是线程安全的 先写一段代码证明CopyOnWriteArrayList确实是线程安全的。 ReadThread.java import java.util.List; public class ReadThread implements Runnable {......

绝地逢生
35分钟前
1
0
Java重写的7个规则

几年前你可能会遇到这样一个面试题:“重写和重载的区别”、而现在随着科技的更迭、面试的问题越来越高级、面试官的问题也越来越深入、此文是上述面试题的一个延伸、让你从简单的重写规则中更...

architect刘源源
35分钟前
3
0
JavaScript异步编程:Generator与Async

从Promise开始,JavaScript就在引入新功能,来帮助更简单的方法来处理异步编程,帮助我们远离回调地狱。 Promise是下边要讲的Generator/yield与async/await的基础,希望你已经提前了解了它。...

前端攻城老湿
36分钟前
16
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部