Java学习笔记(二)——类和对象
【1】类是模子,确定对象将会拥有的特征(属性)和行为(方法)。
【2】类的特点:类是对象的类型;
具有相同属性和方法的一组对象的集合。
【3】属性:对象具有的各种特征(每个对象的每个属性都拥有特定值)。
【4】方法:对象执行的操作。
【5】定义一个类的操作:
a,定义类名 public class 类名{
b,编写类的属性 ~~ //定义属性部分
c,编写类的方法 ~~ //定义方法部分
}
【6】使用对象的步骤:
1,创建对象: 类名 对象名=new 类名();
2,使用对象: 引用对象的属性——对象名.属性();
引用对象的方法——对象名.方法名();
【7】成员变量和局部变量区别:
1,作用域不同,局部变量仅限于定义它的方法。
2,初始值不同,java会给成员变量赋初值,不会给局部变量赋初值。
3,同一方法中不允许同名局部变量,不同方法中可以用同名局部变量。
4,两类变量同名时,局部变量具有更高的优先级。
【8】构造方法:
1,使用new+构造方法 创建一个新的对象。
2,构造方法是定义在java类中的一个用来初始化对象的方法,构造方法与类同名且没有返回值。
构造方法语句格式:
public 构造方法名(可以指定参数){
//初始化代码
}
3,无参构造方法的使用:
main():
Telphone phone=new Telphone();
class Telphone:
public Telphone(){
代码
}
4,带参构造方法的使用:
main():
Telphone phone=new Telphone(4.0f);
class Telphone:
public Telphone(float newScreen){
代码
}
5,当没有指定构造方法时,系统会自动添加无参的构造方法。
6,当有指定的构造方法,无论是有参还是无参的构造方法,都不会自动添加无参的构造方法。
7,构造方法的重载。
8,构造方法不但可以给对象的属性赋值,还可以保证给对象的属性赋一个合理的值。
【9】static使用之静态变量:
java中被static修饰的成员称为静态成员或类成员。它被类的所有对象共享。静态成员可以使用类名直接访问,也可以使用对象名进行访问。
使用static可以修饰变量、方法和代码块。
例:
public class HelloWorld{
//static修饰的变量为静态变量,所有类的对象共享hobby
static String hobby=“eat”;
public static void main(String[ ] args){
//静态变量可以直接使用类名来访问,无需创建类的对象
System.out.println(HelloWorld.hobby);
//创建类的对象
HelloWorld hello=new HelloWorld();
//使用对象名来访问静态变量
System.out.println(hello.hobby);
//使用对象名的形式修改静态变量的值
hello.hobby=“drink”;
//再次使用类名访问静态变量,值已经被修改
System.out.println(hello.hobby);
}
}
【10】static使用之静态方法:
public class HelloWorld{
//使用static关键字声明静态方法
public static void print(){
System.out.println(“吃喝玩乐”);}
public static void main(String[ ] args){
//直接使用类名调用静态方法
HelloWorld.print();
//也可以使用通过对象名调用
HelloWorld demo=new HelloWorld();
demo.print();
}
}
****静态方法中可直接调用同类中的静态成员,但不能直接调用非静态成员。若要在静态方法中调用非静态成员,需创建类的对象通过对象访问。
****main方法是静态方法。
****普通成员方法中可直接访问同类的静态变量和非静态变量。
****静态方法中不能直接调用非静态方法,需通过对象访问。
【11】static使用之静态初始化块:
静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。
程序运行时,静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。
Java学习笔记(二)——类和对象的更多相关文章
- Java学习笔记之---类和对象
Java学习笔记之---类和对象 (一)类 类是一个模板,它描述一类对象的行为和状态 例如:动物类是一个类,动物们都有属性:颜色,动物们都有行为:吃饭 public class Dog { Stri ...
- Java学习笔记 04 类和对象
一.类和对象的概念 类 >>具有相同属性和行为的一类实体 对象 >>实物存在的实体.通常会将对象划分为两个部分,即静态部分和动态部分.静态部分指的是不能动的部分,被称为属性,任 ...
- Java学习笔记之——类与对象
1.参数的传递方式 1)值传递 2)引用传递 2.类和对象: (1)类的定义: public class 类名{ 类型 属性1: 类型 属性2: ……… public 返回值类型 方法名1(形参){ ...
- 1.2(java学习笔记)类与对象
对象:是指具体的事物.比如学生 张三,老师 李四,代表一个单一的个体. 比如 学生 张三,这时张三就是具体的对象. 类:将对象中共有特征抽象出,可以理解为某种特性的集合. 世界上的事物可以分解成一 ...
- Java学习笔记——File类之文件管理和读写操作、下载图片
Java学习笔记——File类之文件管理和读写操作.下载图片 File类的总结: 1.文件和文件夹的创建 2.文件的读取 3.文件的写入 4.文件的复制(字符流.字节流.处理流) 5.以图片地址下载图 ...
- Java学习第二篇:类,对象,成员属性,成员方法,构造方法,类变量,类方法
一.类的定义 一个全面的类定义是比较复杂的, 定义如下:
- Java学习笔记二十四:Java中的Object类
Java中的Object类 一:什么是Object类: Object类是所有类的父类,相当于所有类的老祖宗,如果一个类没有使用extends关键字明确标识继承另外一个类,那么这个类默认继承Object ...
- Java学习笔记六 常用API对象二
1.基本数据类型对象包装类:见下图 public class Test { public static void main(String[] args){ Demo(); toStringDemo() ...
- Java学习笔记(2)--- 对象和类入门,java包,this 和 super区别
1.对象和类(Object and class): 一个 Java 程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作. 面对对象编程是java非常重要的一部分,作者本身之前学过c ...
- Java 学习笔记 ------第五章 对象封装
本章学习目标: 了解封装的概念与实现 定义类.构造函数与方法 使用方法重载与不定长度自变量 了解static方法 一.Java封装概念 在面向对象程式设计方法中,封装(英语:Encapsulation ...
随机推荐
- python使用tcp实现一个简单的下载器
上一篇中介绍了tcp的流程,本篇通过写一个简单的文件下载器程序来巩固之前学的知识. 文件下载器的流程如下: 客户端: 输入目标服务器的ip和port 输入要下载文件的名称 从服务器下载文件保存到本地 ...
- 异步是javascript的精髓
最近做了一个智能家居的APP,目前纯JS代码已经4000多行,不包括任何引入的库.还在不断升级改造中...这个项目到处都是异步.大多数都是3-4层调用.给我的感觉就是异步当你习惯了,你会发现很爽.下面 ...
- 抛弃console.log(),拥抱浏览器Debugger
译者按: 切换成本真的不高,建议使用开发者工具来Debug! 原文:How to stop using console.log() and start using your browser's deb ...
- jstack 排查 java 进程占用大量 CPU 问题
1. top 看看哪个进程是罪魁祸首 2.将这个进程的jstack dump 到一个文件里面,以备使用. jstack -l 25886 > /tmp/jstack.log # 如果报错,则加 ...
- 洛谷P4704 太极剑(乱搞)
题意 题目链接 Sol 不会正解 写了发暴力过了,貌似跑的还挺快?.. // luogu-judger-enable-o2 // luogu-judger-enable-o2 #include< ...
- Java用户自定义函数
用户除了可以使用JavaScript的内置函数之外,还可以自己定义函数.自定义函数有3种方法. 使用关键字 function 构造 语法: function funcName([param1][,pa ...
- Android--使用JobService实现进程保活
进程保活一直是广大APP开发者所希望的,因为进程活着我们就可以操作很多事情(推送,数据同步等等),但是google大大是不允许这样做的(优化),所以我们要另辟蹊径. 先来看看android中有几种进程 ...
- TypeScript的概要和简介
安装 Typescript的基本介绍可以自行百度 centos虚拟机中可以完整的体验, virtualbox安装开发版本,选择开发工具项,否则增强功能无法安装[提示kernel 头文件缺失,yum安装 ...
- Scala实现树形结构
package graphx import java.util.ArrayList import java.util.List /** * Created by zhen on 2018/12/28. ...
- tesseract安装及问题处理
错误1 pytesseract.pytesseract.TesseractNotFoundError: tesseract is not installed or it's not in your p ...