3.1 类

类在Java语言中是一种最基本的引用数据类型,是组成Java程序的基本要素。具有相同属性(状态)和方法(行为)的一组对象的集合称为类,其内部包括属性和方法两个主要部分。

3.11 类的定义

类是一种引用数据类型,用户必须先定义类,然后用它声明类实例;而简单数据类型由Java系统定义,用户可以直接使用它定义数据,这是类和简单数据类型的区别。

  一个类的定义包含两部分:类声明和类体。

[类修饰符] class 类名 [extends 父类名] [implements 接口名列表]    //类声明
{ // 类体说明
[声明成员变量;]
[声明方法;]
}

1. 类声明

class为关键词,类名由用户给定,不过应符合标识符得命名规则,另外类名应具有一定的意义,可以由几个词混合组成,每个词的第一个字母应大写。

类修饰符有 public、 private、 protected、 abstract、 final。对于一般的类通常只有两种访问权限:public 和 default。用public修饰的类,可以被不同包下的类引用,有好的类只能在同一包下被引用。

3.12 成员变量

成员变量的类型可以是Java中的任意数据类型,包括简单类型、数组、类和接口。在一个类中,某个成员变量应该是唯一的。

成员变量的声明方式如下:

[public | protected | private ] [static] [final] type variableName;

1.public 类中限定为public的成员,可以被所有的类访问

2.protected 类中限定为protected的成员,可以被这个类本身、它的子类以及同一个包中的所有其他类访问

3.private 类中限定为private的成员,只能被这个类本身访问

4.default 类中不加任何访问权限限定的成员属于默认的访问状态,可以被这个类本身和同一个包中的类所访问

5.static 静态变量,限定该成员变量为类变量(没有用 static 修饰的成员变量称为实例变量),可直接通过类名来访问

6.final 用来声明一个常量,对于用 final 限定的常量,在程序中不能修改它的值

3.13 成员方法

1.方法定义 方法声明包括方法名、返回类型和参数。其中参数的类型可以试简单数据类型,也可以是引用数据类型(又称符合数据类型)

Java实现的是值传递,方法接受参数的值,但不能改变这些参数的值。

3.1.4 构造方法

1.public 任何类都可以创建它的实理

2.private 其他类不能实例化这个类

3.protected 只有子类和在相同包中的类可以创建它的实例

4.缺省 只有在相同包中的类可以创建它的实例

3.1.5 main方法

main方法表示一个Java应用程序执行的起点。一个Java应用程序可以由一个或多个类组成,但其中必须有一个类定义一个main()方法

3.2 对象

对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位。一个对象是由一组属性和对这组属性进行操作的一组服务构成的封装体。

同一类的对象具有相同的属性和操作。

对象必须先创建后方可使用

一个对象的生命期包括3个阶段:创建、使用和释放

3.2.1 对象的创建

1.声明。分配一个引用空间,类似于指针,是一个32位的地址空间

2.实例化。通过new运算符来完成

3.2.2 对象的使用

1.访问对象的成员

通过运算符"."可以实现对成员变量的访问和方法的调用

2.对象做类的成员

类的成员变量可以是简单类型的数据,也可以是对象。把一个对象说明为类成员时,注意在使用前必须为这个对象分配内存。

【Java】《Java程序设计基础教程》第三章学习的更多相关文章

  1. 【Java】《Java程序设计基础教程》第一章学习

    一.Java概述 1.介绍了Java语言的由来 2.Java语言的特点:简单.面向对象.分布式.高效解释执行.健壮.安全.结构中立.可移植.高效率.多线程.动态 3.Java语言的实现机制,引入虚拟机 ...

  2. 【Java】《Java程序设计基础教程》第二章学习

    一.标识符 Java 中标识符的使用有如下规定:(1)标识符由字母.数字.美元符号”$”和下划线”_”组成,除此之外的任何其他符号是不能作为标识符使用的.(2)标识符中的第一个字符不能为数字.  (3 ...

  3. PHP-----PHP程序设计基础教程----第三章函数

    3.1 初识函数 3.1.1 函数的定义 语法: function 函数名([参数1,参数2,......]) { 函数体 } (1)function:在声明函数时必须使用的关键字 (2)函数名:创建 ...

  4. PHP-----PHP程序设计基础教程----第四章数组

    4.1 初识数组 4.1.1 什么是数组 数组是一个可以存储一组或者一系列数值的变量.在PHP中,数组中的元素分两部分,分别为键(Key)和值(Value).其中,“键”为元素的识别名称,也被称为数组 ...

  5. [ABP教程]第三章 创建、更新和删除图书

    Web应用程序开发教程 - 第三章: 创建,更新和删除图书 关于本教程 在本系列教程中, 你将构建一个名为 Acme.BookStore 的用于管理书籍及其作者列表的基于ABP的应用程序. 它是使用以 ...

  6. java中的数据类型,运算符,字符串,输入输出,控制流,大数值,数组; 《java核心技术卷i》 第三章:java基本程序结构;

    <java核心技术卷i> 第三章:java基本程序结构: 每次看书,去总结的时候,总会发现一些新的东西,这次对于java的数组有了更深的了解: java中的数据类型,运算符,字符串,输入输 ...

  7. 20165233 Java第二、三章学习总结

    2017-2018-2 <Java程序设计>第二周学习总结 教材学习内容总结 第二.三章 ch2 标识符与关键字 基本数据类型: 逻辑类型:boolean 整数类型:int.byte.sh ...

  8. [Learn Android Studio 汉化教程]第三章:使用 Android Studio 编程

    [Learn Android Studio 汉化教程]第三章:使用 Android Studio 编程 本章包含如何在 Android Studio 中书写或生成代码. Android Studio ...

  9. Objective-C 基础教程第三章,面向对象编程基础知

    目录 Objective-C 基础教程第三章,面向对象编程基础知 0x00 前言 0x01 间接(indirection) 0x02 面向对象编程中使用间接 面向过程编程 面向对象编程 0x03 OC ...

  10. 20172328 2018-2019《Java软件结构与数据结构》第三周学习总结

    20172328 2018-2019<Java软件结构与数据结构>第三周学习总结 概述 Generalization 本周学习了第五章:队列.主要内容包含队列的处理过程.如何用对例如求解问 ...

随机推荐

  1. idea中默认maven配置

    使用idea时,通常会配置自己的maven,但是发现每创建一个新项目都需要重新配置一遍,原来在idea中有一个默认配置,修改后就会全局生效,具体配置如下: 简单两步,配置完成.

  2. Qt5 QtQuick系列----QtQuick的Secne Graph剖析(3)-- qml与OpenGl结合

    我读的书愈多,就愈亲近世界,愈明了生活的意义,愈觉得生活的重要. -- 高尔基 需要先看:https://blog.csdn.net/qq_35865125/article/details/86485 ...

  3. Java语言中null与" "的区别

    null是空对象,没有地址,可以赋值给任何对象:""是空字符串,有地址但是里面的内容是空的,只能赋值给字符串对象. 如:String s;//分配了一个内存空间,没存入任何对象   ...

  4. python学习-62 类属性的增 删 该 查

    类属性 1.类属性 类属性又称为静态变量,或者是静态数据.这些数据是与它们所属的类对象绑定的,不依赖于任何类实例. 2.增 删 改 查 class zoo: country = 'china' def ...

  5. Linux 进程间通信(管道、共享内存、消息队列、信号量)

           进程通信 : 不同进程之间传播或交换信息    为什么要进程通信呢? 协同运行,项目模块化 通信原理 : 给多个进程提供一个都能访问到的缓冲区. 根据使用场景,我们能划分为以下几种通信 ...

  6. nginx安装错误:No package nginx available

    出现错误: 1,备份 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup 2.下载新的CentO ...

  7. golang ---调用window api函数执行程序

    package main import "syscall" import "unsafe" func main() { var hand uintptr = u ...

  8. ubuntu 18.04安装RTX 2060 显卡驱动

    第一:安装ppa的显卡驱动源 sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt update 第二:检查显卡和推荐驱动 ubuntu- ...

  9. bat批处理删除多少天前的文件

    @echo off ::演示:删除指定路径下指定天数之前(以文件的最后修改日期为准)的文件. ::如果演示结果无误,把del前面的echo去掉,即可实现真正删除. ::本例需要Win2003/Vist ...

  10. MySQL分库备份

    1.需求概述 每天00:00备份MySQL数据库数据: 每一个库生成一个文件,使用gzip压缩,文件名:backup_库名_yyyymmdd.sql.gz,注意yyyymmdd需要是前一天: 备份文件 ...