3433人加入学习
(12人评价)
JDBC编程和MySQL数据库

制作完成于2018年5月11日 使用JDK8

价格 免费

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <title> 内部类 </title>
  <meta name="Generator" content="EditPlus">
  <meta name="Author" content="">
  <meta name="Keywords" content="">
  <meta name="Description" content="">
  <meta charset="UTF-8">
  <style type="text/css">
		body{background-color:#6600ff;}
		p{text-indent:2em;}
  </style>
 </head>

 <body>
	<h3>一、内部类基础</h3>
		<p>在Java中,可以将一个类定义在另一个类里面或者一个方法里面,这样的类称为内部类。广泛意义上的内部类一般来说包括这四种:成员内部类、<br/>局部内部类、匿名内部类和静态内部类。下面就先来了解一下这四种内部类的用法。</p>
	<h4>1.成员内部类</h4>
		成员内部类是最普通的内部类,它的定义为位于另一个类的内部,形如下面的形式:<br/>
		<p>class Circle {</p>
			<p>double radius = 0;</p>
     			 <p>public Circle(double radius) {</p>
				<p>this.radius = radius;</p>
			 <p>}<br/>
     		 <p>class Draw {     //内部类</p>
			<p>public void drawSahpe() {</p>
			 <p>System.out.println("drawshape");</p>
			<p>}</p>
		 <p>}</p>
	  }</p>
	  <p>成员内部类可以无条件访问外部类的所有成员属性和成员方法(包括private成员和静态成员)。</p>
	  <p>不过要注意的是,当成员内部类拥有和外部类同名的成员变量或者方法时,会发生隐藏现象,即默认情况下访问的是成员内部类的成员。如果要访问<br/>外部类的同名成员,需要以下面的形式进行访问:</p>
		<p>外部类.this.成员变量</p>
		<p>外部类.this.成员方法</p>
	  <span>虽然成员内部类可以无条件地访问外部类的成员,而外部类想访问成员内部类的成员却不是这么随心所欲了。在外部类中如果要访问成员内部类的<br/>成员,必须先创建一个成员内部类的对象,再通过指向这个对象的引用来访问:</span>
			<p>class Circle {</p>
					<p>private double radius = 0;</p>
				 
					<p>public Circle(double radius) {</p>
						<p>this.radius = radius;</p>
						<p>getDrawInstance().drawSahpe();   //必须先创建成员内部类的对象,再进行访问</p>
					<p>}</p>
					 
					<p>private Draw getDrawInstance() {</p>
						<p>return new Draw();</p>
					<p>}</p>
					 
					<p>class Draw {     //内部类</p>
						<p>public void drawSahpe() {</p>
							<p>System.out.println(radius);  //外部类的private成员</p>
						<p>}</p>
					<p>}</p>
				<p>}</p>
		<span>成员内部类是依附外部类而存在的,也就是说,如果要创建成员内部类的对象,前提是必须存在一个外部类的对象。创建成员内部类对象的一般		<br/>方式如下:</span>
			<p>public class Test {</p>
					<p>public static void main(String[] args)  {</p>
						<p>//第一种方式:</p>
						<p>Outter outter = new Outter();</p>
						<p>Outter.Inner inner = outter.new Inner();  //必须通过Outter对象来创建</p>
						<p>//第二种方式:</p>
						<p>Outter.Inner inner1 = outter.getInnerInstance();</p>
					<p>}</p>
				<p>}</p>
			 
			<p>class Outter {</p>
				<p>private Inner inner = null;</p>
				<p>public Outter() {</p>
					 
				<p>}</p>
				 
				<p>public Inner getInnerInstance() {</p>
					<p>if(inner == null)</p>
						<p>inner = new Inner();</p>
					<p>return inner;</p>
				<p>}</p>
				  
				<p>class Inner {</p>
					<p>public Inner() {</p>
						 
					<p>}</p>
				<p>}</p>
			<p>}</p>
		<span>内部类可以拥有private访问权限、protected访问权限、public访问权限及包访问权限。比如上面的例子,如果成员内部类Inner用private修饰,则<br/>只能在外部类的内部访问,如果用public修饰,则任何地方都能访问;如果用protected修饰,则只能在同一个包下或者继承外部类的情况下访问;如<br/>果是默认访问权限,则只能在同一个包下访问。这一点和外部类有一点不一样,外部类只能被public和包访问两种权限修饰。我个人是这么理解的,<br/>由于成员内部类看起来像是外部类的一个成员,所以可以像类的成员一样拥有多种权限修饰。</span>
 </body>
</html>

 

[展开全文]

创建数据库:

  create database 数据库名称

展示所有的创建的数据库:

  show databases

使用某个数据库:

use 数据库名称

查看当前所使用的数据库:

 select database()

############

创建表:

  create table 表名();

展示表:

show tables

 删除表:

 drop table 表名

  

 

 

 

 

 

[展开全文]

create database "";  --创建数据库

show databases; --显示所有数据库

drop database "";  --删除某一数据库

use "";  --操作某一数据库

select database();  --查看当前选择的是哪一个数据库

 

[展开全文]

授课教师

SiKi学院老师

课程特色

视频(27)
下载资料(1)