Printable Version of Topic
Click here to view this topic in its original format |
Forums > Флейм > Есть тут у нас программисты на Java?, Не могу сам разобраться. |
Posted by: DetecDivx on 10-08-2004, 11:30 |
Привет всем! Люди помогите, пожалуйста. Я учусь в Михлале(колледже) и нам по курсу программирование на C++ задали написать работу про классы и Inheritance на Java. Вот такой смешной учитель. Вообщем начал я копаться в Интернете. К своему сожалению не смог найти ничего чтобы подходило для новичка, всё туманно и неопределённо. А основываясь на таких знаниях, работу писать нельзя. Поэтому обращаюсь сюда - может кто-то сможет мне указать хороший ресурс по Java (для новичков). И ещё заранее благодарен если ответите мне на пару вопросов: 1) Почему в C++ можно было писать один раз слово public/privet/protected, а тут надо на каждую функцию писать? 2) Я так понял что void main() должна находиться в каком-то классе. Должен ли этот класс быть public обязательно? 3) В примерах в Интернете вижу, что всегда пишется public static void main(String[] args). В C++ главная функция могла быть просто void main(). Короче такая путаница в голове, чтобы запустить простую программу мне требуется часы на поиски ошибок. Заранее очень признателен за помощь! |
Posted by: muaddib on 10-08-2004, 12:06 |
в какой михлале-то учишься? попытаюсь помочь, но на мой взгляд самый лучший ресурс по жабе это сановский туториал (вот тут (http://java.sun.com/docs/books/tutorial/index.html). смотри еще тут (http://freebooks.by.ru/Java.html - много всякого интересного. итак, 1) если не изменяет память и в Жаве можно определять блоки, кроме того в с++ обычно с начала функция только объявляется и только потом определяется, тут же ты делаешь все по ходу дела. 2) ну а как же ту собираешься его запускать. разве в с++ может быть мейн не в паблик классе (может конечно, но тогда какой от него толк). 3) так оно есть и ни как иначе. еще советую пошлятся по сайтам универов, там обычно не плохая инфа содержится (особенно в ^BGU^). удачи. зы. например вот это (http://www.cs.bgu.ac.il/~intro041/ |
Posted by: DetecDivx on 10-08-2004, 12:53 | ||||
muaddib Спасибо, будем разбираться. Учусь в Михлелет-А-Галиль-А-Маарави (возле Акко).
В C++ функция main() вообще не принадлежит ни к какому классу. То есть в Java она обязана принадлежать?
Странно, но компиляцию он проходит, если написать просто void main(). Помоги мне разобраться с программой, почему она не хочет запускаться. Пишет Exception in thread "main" java.lang.NoSuchMethodError :main. Вроде простая до нельзя. public class first //My first program in Java { //The program prints sentense on the screen public static void main() { System.out.println("Hello,America!");//printing on the screen Student S1=new Student(); S1.setMark(90); S1.getMark(); } } public class Student { int mark; public void getMark() { System.out.println("Your mark is:" + mark); } public void setMark(int m) { mark=m; } } Не хочет запускаться и всё. |
Posted by: muaddib on 10-08-2004, 13:08 |
по-моему ты import (include по-нашему) чему-то не делаешь. откуда ты берешь System.out.println? не очень помню, но кажется его надо инклюдить, просто так он не идет. советую начать с "Hello World" (так сказать с ab ovo), на сановском сайте должен быть. |
Posted by: Billy Bonce on 10-08-2004, 13:35 |
DetecDivx Когда ты создаешь класс , ты должен определить его констрактор (функция которая определит значение int mark ) http://www.javacoffeebreak.com/java102/java102.html (http://www.javacoffeebreak.com/java102/java102.html |
Posted by: DetecDivx on 10-08-2004, 13:59 |
Billy Bonce Не выходит. Пишу: Student() {mark=0;} Та же самая ошибка. Не понятно зачем мне нужен констрактор, если во-первых у меня в этом случае используется default. То есть пускай он сначала мне создаст объект (не важно какой mark), а потом я указываю что mark=90. muaddib Этот уровень я уже прошёл. Не обязательно #include делать. Голова кругом идёт, а точности не прибавляется. Простой ввод написать не могу. |