这个JAVA程序错在哪了?麻烦大虾帮忙解答,急用!

packageArrayText;importjava.lang.*;importjava.awt.BorderLayout;importjava.awt.Color;i... package ArrayText;
import java.lang.*;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.datatransfer.Clipboard;
import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.StringSelection;
import java.awt.datatransfer.Transferable;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.print.PageFormat;
import java.awt.print.PrinterJob;
import java.io.BufferedOutputStream;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.Reader;

import javax.swing.Box;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.event.UndoableEditEvent;
import javax.swing.event.UndoableEditListener;
import javax.swing.text.PlainDocument;
import javax.swing.undo.UndoManager;
public class ArrayText {
class man
{
private String name;
private int age;
private float height;
private float weight;
public void setname()//设置姓名
{
this.name="李哲";
}
public void setage(int a)//设置年龄
{
this.age=a;
}
public void setheight(float h)//设置身高
{
this.height=h;
}
public void setweight(float w)//设置体重
{
this.weight=w;
}
public void display()
{
System.out.println("学生姓名:"+name);
System.out.println("学生年龄:"+age);
System.out.print("学生身高:"+height);
System.out.println("cm\n学生体重:"+weight);
}
}
class Student extends man
{
private float sxcj;
public void sets(float s)
{
this.sxcj=s;
}
public void display()
{
super.display();
System.out.println("学生成绩:"+sxcj);
}
}
public static void main(String[] args)
{
Student s1=new student();
s1.setname();
s1.setage(20);
s1.setheight(183);
s1.setweight(60);
s1.sets(87);
s1.display();
}
}
展开
 我来答
百度网友435cbcc65
2010-02-08
知道答主
回答量:5
采纳率:0%
帮助的人:6.8万
展开全部
第一个错误:
Student s1=new student();
改成Student s1=new Student();

第二个错误:
把class man和class Student放到外面,不能作为内部类
因为ArrayText并没有实例化,只是一个类,不是一个对象,所以没法调用类里面的成员类,如果非要作为内部类的话,可以再class man 和student前面加上static
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xiayanyang1988
2010-02-08 · 超过25用户采纳过TA的回答
知道答主
回答量:156
采纳率:0%
帮助的人:65.1万
展开全部
这里是成员内部类的用法,将Student s1=new student()改成ArrayText.Student s1=(new ArrayText()).new Student();
如果对内部类语法不太了解,就不要在类里面写类。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
526323936
2010-02-08 · 超过32用户采纳过TA的回答
知道答主
回答量:108
采纳率:0%
帮助的人:106万
展开全部
你的Student类是内部类,不能直接这样new
应该这么写
Student s1 = new ArrayText().new Student();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
随疯KING
2010-02-08 · TA获得超过357个赞
知道小有建树答主
回答量:686
采纳率:0%
帮助的人:358万
展开全部
class man和class Student放到外面,不能作为内部类
new student();大小写问题!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yhonet
2010-02-08 · 超过22用户采纳过TA的回答
知道答主
回答量:35
采纳率:100%
帮助的人:15.2万
展开全部
man 和 student 要定义成静态的。像下面这样:

static class man

static class Student extends man
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式