+ 2
Pls i need help in my java code..i have issues in the println method
public class Program{ void name() { System.out.println("Peach slice"); } void weight(){ System.out.println("500grams"); } void calories() { System.out.println(70); } void servings() { System.out.println(4); } void cost(){ System.out.println(1.83); } } public class foodProduct { public static void main(String args[]); Program product=new Program(); System.out.println("The product "+ product.name + " has "+ product.calories + " at "+ product.servings + ". It cost
quot; + product.cost+ " and is weighed at "+ product.weight); }15 ответов
+ 3
Inside the main method try this,
Program product = new Program();
product.name(),
product.weight();
product.calories();
product.serving();
product.cost();
Then, end the main method braces and class braces.
I hope u got me......!☺
+ 2
Btw. accessing the members would work that way, but it's not good style to do so.
+ 2
Ohhh... thanks...I got that idea from a book by Barry Burd "Java for dummies"
Well we keep learning every day thanks once again
+ 2
😂😂😂don't be so harsh
+ 2
Think of a class as something what is organizing your data. Usually you have it in other files beyond the places where you're coding the logic. So it should be implemented and designed to make your logic as short and readable as possible. Therefore you need e.g. one or more useful constructors to avoid setting members from the outside. And it's of course much better to provide a method which organizes the output for you instead of organizing it where the more relevant logic should take place.
+ 2
Have to, that's even worse than... And should definitely not be recommended by a beginners book...
+ 2
Thanks very much Sandra...I really appreciate🙂🙂
+ 1
Your problems are not caused by print method. You're calling the methods without braces, which are mandatory. Without braces you can only access to visible fields (members) of a class.
+ 1
There are some more issues... You need to put the stuff you want to be executed within main method within curly braces as code block. And calling the methods will not work as you obviously expect. You should make them either returning the requested values to use them within a print call or change from one println in main method to several.
+ 1
Thanks very much... I'll make the appropriate changes
I really appreciate 🙂🙂
+ 1
Here you can take a look, how the clean implementation would be:
https://code.sololearn.com/cbgc7t96zTSj/?ref=app
+ 1
Ohh I see...I printed this code without using method b4...So I decided to use the method format..then I encountered this error
This code is the one without method
https://code.sololearn.com/cMdChR19SCrD/?ref=app
+ 1
Please read some stuff about classes. What you've got there is more a data structure like C struct, but not an object. To instantiate an object, it needs a construction (what you are calling with keyword "new <name>). Without any constructor implementation, this cannot work.
+ 1
For real? Then I have to check my library to delete it if it's there...
0
It's quite better to use getter-methods and to encapsulate some logic. To display an object, it's completely unnecessary to do this from the outside field by field. This information (how a complete summary of a product looks like and which information it contains), should be part of the corresponding class and not clutter the program logic.