1、面向对象编程:

面向对象编程的语言不止java一种,还有:

simula 67(第一个面向对象语言,支持单继承和一定含义的多态和部分动态绑定);

Smalltalk(第一个支持动态类型的语言,支持单继承、多态和动态绑定);

EIFFEL(支持多继承、多态和动态绑定);

C++(它的大部分基于类的特性继承自Simula。支持多继承、多态和部分动态绑定);

C#(也支持单继承,与Java和C++等有很多类似之处);

Python( [ˈpaɪθən]是一种解释型、面向对象、动态数据类型的高级程序设计语言);
Ruby (日本人开发的,是一种开源的面向对象程序设计的服务器端脚本语言);
Scala(是一门多范式(multi-paradigm)的编程语言,设计初衷是要集成面向对象编程和函数式编程的各种特性。运行在java虚拟机上)

面向过程编程语言的典型代表:c语言。

不管是面向对象还是面向过程,都是将现实世界抽象出来,为了解决问题而形成的思维系统。

面向过程是指,我们考虑问题时,以一个具体的流程(事务过程)为单位,考虑它的实现:

面向对象是指,我们考虑问题时,以对象为单位,考虑它的属性及方法:

2、java类:

java类将属性和方法封装起来,一切都依赖于类及对象才可以实现调用。里面又分为普通类,抽象类和接口:

①接口:

1、接口中定义方法和属性;

不能有构造器,不能实例化
可继承多个接口,可以用abstract修饰
2、方法只有声明,没有方法体;
3、属性默认为public static fianl的,且必须有初始化值;
4、java8中可以定义普通方法,也可以在接口中定义一个内部类,在内部类中定义普通方法

②抽象类:

1、抽象类定义方法和属性;
可以有构造方法,不能实例化
2、抽象类可以继承抽象类,且只能继承一个;
抽象类也可以继承一个普通类;
3、可以定义普通方法,但必须有方法体;
4、属性可以没有初始化值
③普通类:
1、普通类可以继承普通类,
且只能继承一个普通类;
2、普通类可以被抽象类继承;
3、普通类能同时实现多个接口

基础语法强调理解,后面需要深刻理解面向接口编程思想。小编也会在后面单独写一篇关于接口的总结。

java普通类、抽象类、接口、面向对象理解的更多相关文章

  1. Java常用类、接口关系图谱

    呕心沥血画出此图,希望在使用Java类.接口时捋顺其关系,从而更好的组织程序逻辑---请看图 Object分出来的类都是其子类 Iterable接口分出的也是子接口 从继承关系分析,其父类实现的接口子 ...

  2. Java基础——类与接口

    一.类与接口的关系 1.类与类的关系 继承关系,只能单继承,不能多继承:但是可以多层继承 2.类与接口的关系 实现关系,可以单实现,也可以多实现,还可以继承一个类的同时实现多个接口 3.接口与接口的关 ...

  3. 10-01 Java 类,抽象类,接口的综合小练习--运动员和教练

    运动员和教练的案例分析 运动运和教练的案例 代码实现 /* 教练和运动员案例 乒乓球运动员和篮球运动员. 乒乓球教练和篮球教练. 为了出国交流,跟乒乓球相关的人员都需要学习英语. 请用所学知识: 分析 ...

  4. java 继承类与接口问题

    java 先extends 继承类,再implements 继承接口 public class DataBase extends ClassBase implements Ijiekou { }// ...

  5. Effective java -- 3 类和接口

    第十三条:使类和成员的可访问性最小化 一个设计良好的模块会将实现细节隐藏起来,只将暴露API.模块之间调用并不知道对象的细节.这个概念成为信息隐藏或封装.要注意一点,设计的一个方法或者其他什么,只要不 ...

  6. Java学习笔记 抽象类 接口 多态

    instanceof 对象名 instanceof 类名 该对象是否属于该类 Animal animal = new Dog(); if(animal instanceof Dog){ Dog d = ...

  7. JAVA笔记6__抽象类/接口/多态/instanceof关键字、父类设计法则

    /** * 抽象类:很多具有相同特征和行为的类可以抽象为一个抽象类 * 1.抽象类可以没有抽象方法,有抽象方法的类必须是抽象类 * 2.非抽象类继承抽象类必须实现抽象方法[可以是空实现] * 3.抽象 ...

  8. java流类、、、理解不够,流太多不知怎么用好?

    总结:输入流.输出流..子类多.需要加强: package com.da; import java.io.*; public class rtr { public static void main(S ...

  9. 论java虚拟类和接口的区别

    如题:Abstract使数据成员虚拟化,而Interface则使方法成员虚拟化.

  10. java类,接口浅谈

    一般类,抽象类,接口的使用场景: 类;共同的特征和行为的抽取和封装 接口:标准,规范(功能的扩展)         需要对某个类进行功能的扩展,就让某个类实现这个接口,抽取出来称为接口   内部类: ...

随机推荐

  1. UTF-8里包括GB2312

    用最易懂的说法就是UTF-8里包括GB2312.UTF-8是国际通用的标准(包括世界所有的语言),而GB2312(只是简体中文)只适合做中文的网站. 假设你想做个中文网页,但是还可以翻成英文的话,就得 ...

  2. Appium 自动化测试(6) -- 使用Appium操作YY语音例子

    #!/usr/bin/env python # -*- coding: utf-8 -*- import os import unittest from appium import webdriver ...

  3. 谈谈oracle里的join、left join、right join、full join-版本2

    --1.left join  左表为主表,左表返回全部数据,右表只返回与左表相匹配的数据select   t1.fpdm,t1.fphm ,t1.zjr,t1.zjsj,t1.zjjx,t1.zjje ...

  4. Java9新特性

    转载:http://blog.csdn.net/qq_32524177/article/details/77014757 写在前面的话:Java9来了,搜索了很多关于Java9的新特性,但文献不多,特 ...

  5. 【git】提交到github不显示贡献小绿点问题的解决

    问题描述: 最近一直在用github来写博客,但是今天发现github上的contributions记录并没有我的提交记录. 经过一番百度和自行捣鼓发现了问题所在. 原因: 最近实习,公司给配电脑.原 ...

  6. 彻底弄懂jQuery事件原理一

    jQuery为我们提供了一个非常丰富好用的事件API,相对于浏览器自身的事件接口,jQuery有以下特点: 1. 对浏览器进行了兼容性处理,用户使用不需要考虑浏览器兼容性问题 2. 事件数据是保持在内 ...

  7. Jenkins插件开发(二)-- HelloWorld

    在上一篇blog中我们讲了如何搭建jenkins插件的开发环境,接下来介绍如何开发我们的插件. 创建HelloWorld插件 学习每门新语言的时候,我们都会写一个HelloWorld程序,这里介绍的是 ...

  8. maven+jmeter+jenkins集成

    马上要国庆了,最近比较忙,但是感觉忙的效率很一般,之前写过ant的集成,这两天研究了下maven,其中核心的插件便是jmeter-maven-plugin,要想了解更多的朋友,可以自行去官网wiki学 ...

  9. Openlayers4中地图的导出

    概述: 本文讲述Openlayers4中地图的导出,包括调用天地图切片跨域.Geoserver11 WMS跨域等. 效果: 导出图片 页面展示 实现代码: document.getElementByI ...

  10. URL 生成带文字二维码

    <!DOCTYPE html> <html> <head> <title></title> <meta charset="u ...