注册 登录
编程论坛 ASP.NET技术论坛

[求助]使用构造函数程序错误,急求帮助

fzmfb 发布于 2007-03-25 22:13, 668 次点击

//声明类book
  public class Book
{
private string title;
private string isbn;
private string price;
//声明构造函数book
public Book(string newtitle, string newisbn)
{
title = newtitle;
isbn = newisbn;
}
//函数titleinfo
public string titleinfo
{
get
{
return"<i>书名字是:"+title+"</br>isbn"+isbn"</i>";
}
}
   //利用构造函数初始化实例

Book dx=New Book("冯丽","8-111-120");
dx.price="52.9";
response.write(dx.titleinfo);
response.write("<br>价格是:"+dx.price);

}
}

那位能告诉我错在那里?
和原因,不胜感激!

7 回复
#2
pacocai2007-03-25 23:30
必需有public static void Main()

Book dx=New Book("冯丽","8-111-120");

New,就该是小写的new

return"<i>书名字是:"+title+"</br>isbn"+isbn"</i>";

应该改成:return "<i>书名字是:"+title+"</br>isbn"+isbn+"</i>";

如果是真在控制台下编译的程序那么你的response.write还应该改成Console.Write如果不是在控制台下的话,那你的大小写也错误了,C#对大小写要求很严格的。Response.Write这样才是正确的。

大概是这样,程序我现在是编译通过了,不过结果对不对我没看,我只看语句的错误。
#3
fzmfb2007-03-26 19:04

您好:
我已经按照您说的改正了,但是程序仍然有错误,我不是在控制台下编译的
现在我的程序改正如下:
public partial class 构造函数 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}

 public class Book
{
private string title;
private string isbn;
private double price;
//声明构造函数book
public Book(string newtitle, string newisbn)
{
title = newtitle;
isbn = newisbn;
}
//函数titleinfo
public string titleinfo
{
get
{
return "<i>书名字是:"+title+"</br>isbn"+isbn+"</i>";
}
}
   //利用构造函数初始化实例
public static void main(){

Book dx=new Book("冯丽","8-111-120");
dx.price=52.9;
Response.Write(dx.titleinfo);
Response.Write("<br>价格是:"+Convert.ToString(dx.price));
}

}
还是有错误
他解释的是:非静态的方法或者属性要求对象引用
麻烦再指教哈



#4
windstores2007-03-26 20:45
你的price是类的私有变量 怎么可以直接赋值呢?dx.price=52.9;
#5
windstores2007-03-26 20:47
public partial class 构造函数 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}

 public class Book
{
private string title;
private string isbn;
private double price;
//声明构造函数book
public Book(string newtitle, string newisbn)
{
title = newtitle;
isbn = newisbn;
}
//设置
public void Setprice(double Sprice)
{
price=Sprice;
}
//获取
public double Getprice()
{
return price;
}

//函数titleinfo
public string titleinfo
{
get
{
return "<i>书名字是:"+title+"</br>isbn"+isbn+"</i>";
}
}
   //利用构造函数初始化实例
public static void main(){

Book dx=new Book("冯丽","8-111-120");
dx.Setprice(52.9);
Response.Write(dx.titleinfo);
Response.Write("<br>价格是:"+Convert.ToString(dx.Getprice());
}

}

[此贴子已经被作者于2007-3-26 20:49:52编辑过]

#6
fzmfb2007-03-26 20:54

谢谢啊
我后来仔细琢磨了半个小时终于弄明白了

#7
windstores2007-03-26 20:55
#8
pacocai2007-03-26 22:24
懂了就OK,呵呵!
1