[导言]今天开始我们的第二课,主要介绍Java的语法及结构。
java是一种面向对象的编程语言,一切都是对象。那么什么是对象呢,生活中一切都是对象,比如说一颗树,一个人,一只小动物,一切的一切。在java里面用来表示对象的方式就是定义一个类。
接下来我们来看看一个类的定义
package com.demo.main;
public class Person{
private int age;
private String name;
public Person(){
}
public void walk(){
System.out.println("我在走路!");
}
public void eat(){
System.out.println("我在吃饭!");
}
public void sleep(){
System.out.println("我要睡觉了!");
}
}
这是里定义了一个类,用它来描述现实生活中的人这个对象。
我们给这person这个类定义了一系列的属性
int age;
String name;
name代表这个人的名字,age代表年龄,然后又定义了三个行为,对应为类中的 *** ,即人会走路,会吃饭,会睡觉。
public void walk(){
System.out.println("我在走路!");
}
昨天我们知道java的程序要放到.java结尾的文件中,而且有个约定是一个.java文件一般只放一个class。这个class是要用public来声明。
下面我们就来详细讲解一个一个类的结构。
package com.javademo.main; //---这句是代表申明一个包的概念,即这个类要放到
//------- com下的demo的main这个包里面
public class Person{ //类的定义一般用public class 后面接类的名称,
//类的名称首字母要大写并且文件名和类名称要保持一致
private int age; //int是java的基本数据类型,代表一个整数
private String name;//String 是基本数据类型,代表一个字符串
public Person(int age,String name){ //这是一个构造函数,带两个参数
this.age=age;
this.name=name;
}
public void walk(){ //定义了一个不代返回值的函数,用的是public 来修饰。
System.out.println("我在走路!");
}
}
我们总结如下:
类文件的名称要和里面定义的public class的名称相同一个类的定义,一般包括了属性, *** 类至少会有一个无参的构造函数Java语句的结尾要加“;”分号类的定义要用大括号括起来。继续看上面的例子
我们定义了一个Person类,现在要来运行它
我们在Person里面增加一个 *** 定义
public static void main(String[] args){
Person zhansan = new Person(20,“张三”);
zhansan.walk();
}
我们先编译这个类文件,得到class然后在控制台运行
运行结果
public static void main(String[] arge)
这是一个main *** ,所有的java程序如果需要运行 都需要一个main *** 入口。
类与对象的关系
对象:对象是类的一个实例(对象不是找个女朋友),有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。类:类是一个模板,它描述一类对象的行为和状态。类定义了一类对象的模板,是对象的抽象。类要使用必须先实例化成对象。
public static void main(String[] args){
Person zhansan = new Person(20,“张三”);
zhansan.walk();
}
在main *** 中,
Person zhansan = new Person(20,“张三”);
这句话就是用Person这个类,实例化出来一个对象 这个对象的引用我们这里用变量名zhansan来代替。zhansan.walk()就是对象引用zhansan调用了walk() *** 。
在这里new Person(20,"张三")是指的对象,在java里用new来生成一个对象,然后用zhansan来引用这个对象。
要调用类的 *** ,即是对象引用. *** 名
zhansan.walk() *** 来调用。
今天的知识点总结:
类文件的名称要和里面定义的public class的名称相同一个类的定义,一般包括了属性, *** 类至少会有一个无参的构造函数,构造函数和类的名称相同,并且构造函数不带返回值Java语句的结尾要加“;”分号类的定义要用大括号括起来。用new来实例化一个对象用对象引用来调用对象的 *** 。课后题:
1.定义一个类用来描述一只小猫,属性设定有颜色,毛发,品种。行为有喝水,叫,睡觉
编译类文件并打印运行结果
【原创教程,转载请注明.】
Lapsus$黑客组织在3月发生的一系列网络入侵事件中窃取了T-Mobile的源代码,T-Mobile在一份声明中确认了这次攻击,并说”被访问的系统不包含客户或政府信息或其他类似的敏感信息”。在一份私人信息副本中,Lapsus$黑客组织讨论了在其七名青少年成员被捕前一周针对T-Mobile的攻击。...
一个由多个全球执法机构组成的联盟–包括FBI、特勤局、英国国家犯罪署、欧洲刑警组织和其他机构–最近领导了一次行动,以查封RaidForums拥有的网络域名。RaidForums.com通常被描述为世界上最大的黑客论坛之一,它承载着一个留言板系统,恶意方可以在这里购买、出售和交易来自重大漏洞的黑客和...
SSLPing 是一款相当实用的工具,在注册并添加了你的服务器后,它就会帮助检查证书、协议、密码和已知漏洞。从 SSL v3 到 TLS 1.2,对于一些大型服务提供商来说,如果未能在证书到期前妥善处理,后续的影响还是相当难以规避的。然而近日,这款免费工具的创作者正在发出寻求帮助的讯号。 (来自:...
伊朗国家石油产品分销公司(NIOPDC)的加油站26日停工,原因是网络攻击波及了整个分销网络。 NIOPDC网络在全国拥有3500多个加油站,80多年来一直供应石油产品。 调查机构正在查找造成破坏的原因,目前还没有公开说明幕后黑手的信息,但伊朗正在指责一个敌对国家。 并非全无线索,ISNA 通讯社首...
微软披露其已经缓解了一场发生于8月份的2.4Tbps分布式拒绝服务(DDoS)攻击。这次攻击针对欧洲的一个Azure客户,比微软在2020年记录的最高攻击带宽量高出140%。它也超过了之前最大的攻击2.3Tbps的峰值流量,这是在去年针对亚马逊网络服务的攻击。 微软表示,这次攻击持续了10多分钟,...
有使用LastPass的用户报告说,有多人试图使用正确的主密码从不同地点登录,表明该公司可能存在数据泄露。Hacker News论坛的多名用户报告称他们的LastPass的主密码似乎被泄露了。 目前还不知道这些密码是如何泄露的,但在用户中已经出现了一种类似的情形。 大多数报告似乎来自拥有过时的Las...