Java面向对象编程基础

面向对象(Object oriented programming,OOP)技术是一种强有力的软件开发方法,它采用数据抽象信息隐藏技术,来使软件开发简单化,以达到代码重用的目的。

1、OOP的3个特性(封装、继承和多态性)

封装是类的基础,指把类的相关实现细节隐藏起来,在类中将数据和实现操作的代码集中起来放在对象的内部,调用这些类时只需直接使用类预留的接口就可以了。

继承提供了子类自动拥有父类数据结构和方法的机制,它表示类之间的一种关系。

多态指使一个对象被看成另一个对象的技术,即相同的操作或函数、过程可作用于多种类型的对象上,并获得不同的结果。

2、类、对象、方法

:具有相同特性(数据元素)和行为(功能)的对象的抽象就是类。即对象的抽象是类,类的具体化就是对象,或者说类的实例就是对象。(类是一个概念模型,类是构造面向对象程序的基本单位)

对象:一切皆是对象。(对象是真实的实体)

方法:对象执行的操作称为类的方法。

3、构造方法与析构方法

构造方法是类的一种特殊方法,用来初始化类的一个新的对象。JAVA中的每个类都有一个默认的构造方法,它必须具有与类名相同的名称,而且没有返回类型,构造方法的默认返回类型就是对象的类型本身,并且构造方法不能被static/final/synchronized/abstract/native修饰。

析构方法与构造方法相反,当对象脱离其作用域时(例如对象所在的方法已调用完毕),系统自动执行析构方法,析构方法往往用来做清理碎片的工作。

在JAVA的Object类中还提供一个protected类型的finalize()方法,因此任何java类都可以覆盖这个方法,在这个方法中进行释放对象所占有的相关资源的操作。

java中面向对象编程的笔记如下图:

最后给出示例代码:

/******************************************************* "定义类"——如何定义一个类*/
public class Oopbasic   //声明一个类
{private String name;   //编写类的属性private int age;        //编写类的属性public void tell() {    //编写类的方法(无返回参数)System.out.println(name+"今年"+age+"岁!");}public int returnMax(int a,int b) {  //编写类的方法(有返回参数)return Math.max(a, b);}public static void main(String [] args) {   //主函数Oopbasic fa=new Oopbasic();//创建一个实例,即对象fa.name="Fred";fa.age=10;fa.tell();int x=12,y=15;int zuida = fa.returnMax(x, y);System.out.println("MAX="+zuida);}
}

JAVA学习(五):Java面向对象编程基础相关推荐

  1. java学习笔记15--多线程编程基础2

    本文地址:http://www.cnblogs.com/archimedes/p/java-study-note15.html,转载请注明源地址. 线程的生命周期 1.线程的生命周期 线程从产生到消亡 ...

  2. java学习笔记14--多线程编程基础1

    本文地址:http://www.cnblogs.com/archimedes/p/java-study-note14.html,转载请注明源地址. 多线程编程基础 多进程 一个独立程序的每一次运行称为 ...

  3. java 168转换成861_java实验-java语言面向对象编程基础

    java实验-java语言面向对象编程基础 (12页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 8.90 积分 广州大学学生实验报告广州大学学生实验报告 ...

  4. java面向对象编程基础

    java面向对象编程基础 前言:什么是java 是咖啡飘香的清晨 - 是斯坦福校园意浓情深 - 是James的思想睿智 是剁手党双十一挥舞的利刃 是大数据云计算驰骋的平台 - 是ATM上吐出的钞票 - ...

  5. java面向对象程序_面向对象编程基础(java)

    面向对象编程基础 1.1 面向对象概述 在程序开发初期,大家使用的是结构化开发语言,也就是面向过程(opp),但随着市场需求剧增,软件的规模也越来越大,结构化语言的弊端也暴露出来. 开发周期无休止的拖 ...

  6. [Java入门笔记] 面向对象编程基础(二):方法详解

    2019独角兽企业重金招聘Python工程师标准>>> 什么是方法? 简介 在上一篇的blog中,我们知道了方法是类中的一个组成部分,是类或对象的行为特征的抽象. 无论是从语法和功能 ...

  7. Java面向对象编程(基础部分)

    面向对象编程(基础部分) 类与对象 01: public class ObjectWorkDemo {public static void main(String[] args){Cat cat1 = ...

  8. java学习之路之javaSE基础1

    <h2>java学习之路之javaSE基础1</h2> <div> ###01.01_计算机基础知识(计算机概述)(了解) * A:什么是计算机?计算机在生活中的应 ...

  9. 20165310 Java实验五《网络编程与安全》

    20165310 Java实验五<网络编程与安全> 任务一 题目:①编写MyBC.java实现中缀表达式转后缀表达式的功能:②编写MyDC.java实现从上面功能中获取的表达式中实现后缀表 ...

  10. python学习--关注容易被忽略的知识点--(五)面向对象编程

    本系列文章回顾了 python大部分关键的知识点,关注那些容易被忽略的知识点.适用于有一定python基础的python学习者. 本系列文章主要参考廖雪峰的python学习网站.该学习网站内容全面,通 ...

最新文章

  1. 数据结构--树和二叉树
  2. docker容器虚拟化技术_Docker,虚拟机和容器的全面介绍
  3. 二进制安装 kubernetes 1.12(三) - 部署 Master 节点组件
  4. JavaScript权威指南科03章 种类、值和变量(1)
  5. linux ba 模拟,在你的 Python 游戏中模拟引力 | Linux 中国
  6. linux mkfifo管道
  7. @Scheduled cron表达式详解
  8. Spark RDD 宽依赖窄依赖
  9. OBS 电脑推流直播指南
  10. wps+for+linux+字体大小,WPS for Linux(ubuntu)字体配置(字体缺失解决办法)
  11. 基于Hadoop的数据分析案例-陌陌聊天软件数据分析
  12. 【3D视觉】深度摄像头与3D重建
  13. nginx+fastdfs 502异常解决
  14. java中时间类型转换_java中时间类型转换
  15. c语言n个自然数得阶乘求和,计算n个自然数阶乘的和
  16. HCIP——IPv6地址基础
  17. 六年级小学生做的个人网站
  18. linux的安卓源码编译提示版本不匹配,编译Android源码致命错误解决方案
  19. 电路的网孔电流法建模 matlab,第3节 网孔电流法
  20. Python年利率计算器【N日年化收益率】

热门文章

  1. 软激活WIN7 Activation
  2. windows server 2000系统安装
  3. 重温经典:Windows1.0系统体验和尝试自己编写Windows1.0系统
  4. EnableQ在线问卷调查引擎在学校教学教评中的作用
  5. 计算机一级在线模拟试题,全国计算机等级考试一级模拟试题及答案解析
  6. msdtc备份oracle,域渗透-msdtc实现dll劫持后门
  7. 【内网穿透笔记】NAPT类型测试与XTCP点对点内网穿透适用例外
  8. 快速傅里叶变换在信号处理中的应用
  9. 不格式化 删除内存卡上的顽固文件(PC套件操作失败 文件无法删除)
  10. 宏基aspire拆机触摸_宏基(acer)Aspire 4930G拆机教程